Başlığın dediği gibi, en sevdiğiniz beyaz tahta röportaj probleminiz nedir ve neden sizin için etkili olduğunu kanıtladı?
Junior, kıdemli, Java, C, Javascript, PHP, SQL, sözde kod, vb.
Başlığın dediği gibi, en sevdiğiniz beyaz tahta röportaj probleminiz nedir ve neden sizin için etkili olduğunu kanıtladı?
Junior, kıdemli, Java, C, Javascript, PHP, SQL, sözde kod, vb.
Yanıtlar:
Adaydan, günlük işlerimde karşılaştığım bir soruna bir çözüm tasarlamasını rica ediyorum . Bunu yaparken, ben ve aday arasında bir diyalog oluşturmaya çalışıyorum. Yaptığı tasarım hakkında daha önce hiç düşünmemiş olduğum gibi konuşmaya çalışıyorum.
Değerlendirmeye çalıştığım, birbirimizi anlayabilmemiz ve bir karışıklık olmadan teknik bir sorun hakkında konuşabilmemiz.
(Java masaüstü geliştiricisi için)
Bir web tarayıcısının gezinme geçmişini işlemek için bir API tasarlayın (önceki sayfa, sonraki sayfa, önceki 10 sayfayı listeler) ve bu uygulamanın birçok bölümünde tekrar kullanılabilir (burada uygulamamızda somut örnekler vereceğim). Ardından, bir uygulama hazırlayın.
Bunu sevdim, çünkü yeterince basit, göstermesi kolay, adım adım çözülebilir (her şeyi bozmadan ek davranışlar ekleyebilir), son vakalar ve hata yönetimi hakkında konuşmayı sağlar ve ayrıca veriler hakkında konuşmayı sağlar yapıları.
Bunu, adaylarla röportaj yaparken ve orada işi olmayanları filtrelendiğinde son derece aydınlatıcı buldum. Bu, Fizz Buzz’ın karmaşıklığına benzer, ancak veritabanı becerilerine odaklanır.
Assuming the following basic table structure
Documents (DocID, DocDate)
Keywords (KeyWordID, KeyWord)
DocumentKeywords (DocID,KeywordID)
Write a query to return the following:
Part 1: Documents with a DocDate after 4/1/1995
Part 2: Documents that contain the keyword "Blue"
Part 3: Documents that contain the either the keyword "Blue" or "Yellow"
Part 4: Documents that contain the both the keywords "Blue" and "Yellow"
İstedikleri herhangi bir SQL değişkenine yazmalarına izin veriyorum ve küçük sözdizimi problemlerinde çok seçici değilim. Temelde temel ilişkisel DB kavramlarını anladıklarını bilmek istiyorum.
Çoğu aday, hiç sorun yaşamadan 3. bölümden geçebilir. 4. bölüme verilecek cevabın sadece operatörü OR'dan AND'e ve nerede cümlesiyle değiştirmek olduğunu düşündüğünüze şaşıracaksınız.
"Beyaz tahtada benim için üzerinde çalıştığınız son projenin tasarımını çizin, bana herhangi bir hassas detay vermeden."
Uygulamak strcpy
, strcmp
ve arkadaşları.
atoi()
.
strdup()
.
strrev()
tersine çevirme işlevini uygulamamı veya dizgi vermemi istedi . Beyaz tahta çözümüm onları etkiledi ve şimdi iş yapıyorum.
Birkaç disiplini kapsayan favorim, arayüz verilen ikilik bir ağaçtaki düğüm sayısını saymaktır (C #):
public interface IBinaryTree<T>
{
IBinaryTree<T> Left
{
get;
}
IBinaryTree<T> Right
{
get;
}
T Data
{
get;
}
// Other properties and methods not germane to this problem.
}
ve sadece eğlence için, uygulama burada, görüşülen kişinin bunu görmesi gerekmese de.
public sealed class BinaryTree<T> : IBinaryTree<T>
{
private readonly IBinaryTree<T> left;
private readonly IBinaryTree<T> right;
private readonly T data;
public BinaryTree(
IBinaryTree<T> left,
IBinaryTree<T> right,
T data)
{
this.left = left;
this.right = right;
this.data = data;
}
public IBinaryTree<T> Left
{
get
{
return this.left;
}
}
public IBinaryTree<T> Right
{
get
{
return this.right;
}
}
public T Data
{
get
{
return this.data;
}
}
// Other properties and methods not germane to this problem.
}
ve asistan sınıf:
public static class BinaryTreeNodeCounter
{
public static int CountNodes<T>(this IBinaryTree<T> tree)
{
// TODO: What goes here?
}
}
Görmeyi sevdiğim çözüm şudur:
public static class BinaryTreeNodeCounter
{
public static int CountNodes<T>(this IBinaryTree<T> tree)
{
return tree == null
? 0
: 1 + tree.Left.CountNodes() + tree.Right.CountNodes();
}
}
Bilgi gösterdiği gibi:
Benim için ilginç beyaz tahta tartışmaları ortaya çıkaran iki soru
Basit başlarlar ve gittikçe daha karmaşık hale gelirler.
Bir bulmaca veya tasarım sorusunu beyaz tahta sorusu olarak kullanmaktan hoşlanmıyorum. Adayın bazı kod yazma yeteneğini test eden basit, basit soruları tercih ederim. Benim favorilerim:
1) Tek bağlantılı bir listeyi tersine çevirmek için bir fonksiyon yazın. (3 işaretleyiciye ihtiyaç duyduklarının farkına varmaları biraz zaman alır.)
2) Bir ikili ağaç verildiğinde, ikili ağacın derinliğini bulun. (Bu soru özyinelemeli kod yazma yeteneklerini test eder. Temel durumlarının sağlam olup olmadığını kontrol etmeme izin verin.)
3) Bir tamsayı dizisini ikili arama için bir prosedür yazın. (Jon Bentley'nin dediği gibi (Programlama İncileri'nde), birçok kişi ikili arama yazarken hata yapma eğilimindedir. Daha sonra hata bulma, test senaryoları yazma, kodları çalıştırma vb.
Bunu çalıştığım bir şirkette kullandık.
Adayı, izleme süresi için kullanılan bir kağıt parçası verdik. Biri ya da bölümlerimiz tarafından kullanılan gerçek bir zaman çizelgesiydi. Daha iyi bir zaman takip aracı oluşturmak için adaydan tasarım sürecinde bize yol göstermesini istedik. Sınır yok, hangi dilin ne olduğunu söylemedi, sadece adayın "tam yaşam döngüsü" ne kadar iyi olduğunu görmek istiyorum. Gereksinimleri nasıl topladıkları konusunda bize gerçek bir fikir verdi. Veritabanı tablolarını nasıl yapılandırdılar, ne tür bir kullanıcı arayüzü yapabilirler. İletişim becerileri bu görev için açıkça gerekliydi. Genellikle birkaç büyük beyaz tahta içeren bir odada yapıldı ve 2 saat kadar sürdü.
Bu işlemi kullanarak birkaç kişiyi işe aldık ve eğer bu işi gerçekten iyi yaptılarsa bizim için çok iyi yaptılar. Eğer marjinallerse ve onları yine de işe almaya karar verdik (ayrı konu) marjinal programcılardı.
Programlama alanımla ilgili bir problem kullanıyorum.
Web uygulamaları geliştirirsem, kayıtları silen bir web formu nasıl oluşturabileceklerini ve kaydı veritabanından kaldırmak için hangi yaklaşımları kullanabileceklerini görmek istiyorum. Bu, temel veritabanı ilkelerini bildiklerini, silme işlemini doğrulamak için kullanıcıyla nasıl etkileşime girdiklerini ve yumuşak bir silme işleminin ne olduğunu bildiklerini söyler.
Benim favorim yok. Seçtiğim sorun işe bağlı olarak büyük ölçüde değişecek.
Bir röportajda sorunu tamamen çözüp çözemeyecekleri, hangi teknolojileri ve dilleri kullandıkları ya da kodlarının bir beyaz tahta üzerinde ne kadar berbat göründüğü umurumda değil. Bir düşünce deseni arıyorum; Sorunları nasıl düşüneceklerini ve çözebileceklerini bilip bilmediklerini görmek istiyorum.
Benim favorim, kullanılan bir arkadaşımdı.
Bana ilk "n" asal sayılarını oluşturmak / yazdırmak / saklamak için bir işlev yazın ve sonra nasıl çalıştığını ve ne kadar verimli olduğunu açıklayın.
İyi çalışıyor çünkü:
Bu algoritmik bir sorudur, bu nedenle görüşmecinin düşünmesini ve sonra da düşüncelerini açıklamasını gerektirir - böylece beyninin nasıl çalıştığını görebilirsiniz.
Dilden bağımsız.
Neredeyse hiç kimse tam anlamıyla doğru alamaz (her zamanki gibi kaçırdıkları (normalde 1 veya 2) bir uç vaka vardır) ya da negatif sayıları ele almazlar, böylece böceklerle nasıl başa çıktıklarını ve yanlış olduklarını söyleyebilirsiniz.
Birçoğu bunu basit ama çok yavaş bir elek olarak yapar (örneğin, insanların% 80'i n'yi kontrol eder, n'yi n'den küçük olan tüm sayılara bölerek çok önemlidir); Uzay / zaman takaslarında örneğin "Eğer 2'ye bölünemeyeceğini biliyorsan neden sayıyı 4'e bölüyorsun?" ya da "sqrt (n) 'den küçük tüm asal sayılarla bölmeniz gerektiğine karar verdiniz, ancak bu sayıları bir yerde saklamanız gerekiyor, peki bunun etkileri nelerdir?")
Cevabı doğru bulmaları için onlara gerek yok. Birisi düşüncelerini düşünebilir ve açıklayabilirse, iyi bir aday olmak için yolun aşağısında uzun bir yol vardır.
Mühendislik okulumun C sınavlarının bir parçası olan ve tatilden dönerken öğrencilerin başarısız olması için "sahte" bir test olarak kullanılan aff_z adı verilen bir şey (işaretleme sistemimiz bir testin başarısız olduğunu işaretlemeyi durdurdu, bu yüzden bu sahte testin başarısız olacağını tüm testinizi geçersiz kılın. Sizi moronik ayrıntılara dikkat etmeye zorlar). Görüşme sırasında bir ya da iki kez tekrar kullandım.
Her neyse ... Tam formülasyonu unuttum ama böyle bir şeydi ...
Write a function taking a single char parameter named c and returning nothing (void).
You function must satisfy the following requirements:
- if c is bigger or equal to 0, then print 'z' to standard output
- if c is stricly smaller than 0 , then print 'z' to standard output
- in any other case, print the letter 'z' to standard output
Üzücü olan şey, sadece bazı öğrencilerin cevabı oldukça açık bir şekilde ortaya çıktığında aşırı sarsılmış çözümler üretmeyecekleri, ancak bazılarının başarısızlığa uğramayacaklarıdır.
İster inanın ister inanmayın, röportajlar sırasında da oldu.
Bazı başvuru sahipleri olası dalları yazmaya başlayıp daha sonra yanlış olanı anlayacağından (açıkçası, eğer sadece sözlü olarak sorarsanız, bu konuştukları gibi yaptıkları oldukça anlaşılır), çünkü görüşmelerde çalıştırmak oldukça eğlenceliydi. Yazılı olarak ver, şaşırtıcı buluyorum ...)
Aptalca, ancak minimalist bir tarama olduğunu düşünüyorum (benzer şekilde, JS programcılarını işe alırken her zaman bir değişkeni nasıl açıklayacağımı soruyorum, ve sonra cevaplarını kullanarak var kullanıp kullanmamaları herhangi bir fark yaratabiliyor. dürüst.)
variablename = variablevalue;
oysa iyi olanlar sadece telefonda ya da şahsen gülecekler ve doğrudan farklı olanın ne olacağını ya da ne olacağını söyleyeceklerdi. var
).
Gerçekten aradığınız şeye bağlı olarak, görüntüleri içeren çok sayıda dinamik web çalışması yapan bir kuruluş olarak, işle ilgili bir geometri sorusu sormaya meyilliyim. Her durumda, bir geometri sorusu sormaya meyilliyim, çünkü güzel ve görsel olan iyi bir matematik testi buldum ve adaylara çalışmalarını görsel olarak sunma ve bir problemle metodik olarak çalışma yeteneğini gösterme yeteneğini gösterebiliyorum.
İleri seviye adaylar için zaman zaman şu soruyu soruyorum:
Bu görüntü bir hilal ay gösterir. H 'den B' ye D 'nin genişliği 9 cm ve E ile F, 5 cm arasındadır. C, büyük dairenin merkezidir.
a) Lütfen hilal alanını hesaplayın.
b) Herhangi bir boyuttan iç çembere sığacak bir görüntüyü yeniden boyutlandırmak için gerekli hesaplamaları tanımlayın ve eğer merkez nokta biliniyorsa, çemberin içine yerleştirin.
Daha kolay bir soru için genellikle aynı soruyu sorarım, ancak "kare içindeki bir daire içindeki kareyi" kullanın. Bu çok kolay olmasına rağmen, bunda mükemmel cebir olmasını beklerdim.
Bunun üstünde ve üstünde, değişken uzunluktaki bir veri kümesinin tüm kombinasyonlarını oluşturmak için bir algoritmayı başlatmalarını isteme eğilimindeyim.
Gördüğüm en iyi FizzBuzz cevapları:
SQL Server 2008
;WITH mil AS (
SELECT TOP 100 ROW_NUMBER() OVER ( ORDER BY c.column_id ) [n]
FROM master.sys.all_columns as c
CROSS JOIN master.sys.all_columns as c2
)
SELECT CASE WHEN n % 3 = 0 THEN
CASE WHEN n % 5 = 0 THEN 'FizzBuzz' ELSE 'Fizz' END
WHEN n % 5 = 0 THEN 'Buzz'
ELSE CAST(n AS char(6))
END + CHAR(13)
FROM mil
C # (basit)
foreach (int number in Enumerable.Range(1, 100))
{
bool isDivisibleBy3 = (number % 3) == 0;
bool isDivisibleBy5 = (number % 5) == 0;
if (isDivisibleBy3)
Console.Write("Fizz");
if (isDivisibleBy5)
Console.Write("Buzz");
if (!isDivisibleBy3 && !isDivisibleBy5)
Console.Write(number);
Console.WriteLine();
}
C # (zekice)
Enumerable
.Range(1, 100)
.Select(i =>
i % 15 == 0 ? "FizzBuzz" :
i % 5 == 0 ? "Buzz" :
i % 3 == 0 ? "Fizz" :
i.ToString())
.ToList()
.ForEach(s => Console.WriteLine(s));
Görüştüğüm adaylarda birkaç şey arıyorum. Çünkü çevrimiçi olarak tanımlayamıyorum, oldukça zayıf adaylar alıyoruz ve beklemeye geldim, bu yüzden onlar için oldukça kolayım. Yine de aradım:
Tasarım bilinci.
"Bana numara tanımlamasıyla birden fazla Telefon Numarasına sahip ad ve soyadı olan Rehber içeren bir adres defteri programı için tablo yapısını gösterin (hücre / ev / iş / vb.)"
Burada UML 2.0 spec diyagramı aramıyorum, burada basit bir baloncuk diyagramı iyi. Makul olduğu sürece.
Veri tabanı ile çalışma bilgisi (ör. SQL)
Test bilgisi
public IEnumerable<PhoneNumber> GetPhoneNumbers(string lastName)
Sorgunuzun sonuçlarını daha önce döndüren imzanın bulunduğu bir yöntem varsayalım . Boşluğa yönteme bir geçerseniz, NullReferenceException verildiğini varsayalım. Bu işlevselliği göstermek için bir test yazın.
GetPhoneNumbers'ın "smith" soyadı olan biri için ev numarası (123)456-7890) döndüreceğini gösteren bir test yazın.
Bazı kodların nasıl yazılacağı bilgisi
Yazdığınız testlerin gerekliliklerini yerine getirecek bir yöntem uygulayın.
Aldığımız başvuranların sayısını ve kalitesini göz önünde bulundurarak, ciddi şekilde başvuran herkesle röportaj yaptım. Kimseyi işe almadım.
Genelde, üzerinde çalıştıkları son sistemin bir blok şemasını çizmelerine, bloklar arasındaki ilişkileri sormalarına ve çalıştıkları / sorumlu oldukları blok üzerinde yoğunlaşmalarına izin vermelerine izin veririm. Bu alıştırmadan pek çok şey öğrenebilirsiniz, biri küçük alanın ötesine nasıl bakıldığı gibi, 'nerede olduğunu' bilmek için ne kadar önemli olduğunu, onun oynadığı rol hakkında da bilgi sahibi olabilirsiniz. rolü.
Aşağıdaki sorun için bir algoritma Yazın bir sayısı göz önüne alındığında , n çıkışı vardır (benzersiz) ikili ağaç sayısını, n, düğümleri.
Böylece, n = 0 ve n = 1 için cevap 1'dir. N = 2 için 2'ye sahipsiniz: kök düğümü ve ardından ikinci düğüm sola veya sağa.
Tasarım teknikleri hakkında bilgi edinebilir ve özyineleme veya notlandırma veya dinamik programlama çözümü hakkında fikir sahibi olup olmadıklarını görebilirsiniz.
[Ayrıca , ilgili ancak farklı, ikili arama ağaçları durumu için bu StackOverflow tartışmasına bakın .]
Bir yazılım geliştiricisiyle röportaj yapsaydım, ondan bir yazılım tasarlamasını ve her bir satırda tam adı içeren keyfi büyüklükteki bir dosyadan yinelenen girdileri kaldırmak için donanım gereksinimlerini tanımlamasını isterdim. Problem tanımının bazı kısımlarını kasıtlı olarak belirsiz bırakıyorum. Sonra, gereksinimleri, farklı değişimleri, veri yapılarını ve algoritmaları, G / Ç (ikincil depolama), yazılım ve donanım teknolojileri, ölçeklenebilirlik vb.
Başvuru sahibinin birçok bilgi işlem alanındaki bilgi ve kabiliyetlerini ortaya çıkaran küçük ama zorlayıcı bir sorun olduğunu düşünüyorum.
Implement function/method(on c/c++/c# whatever), which calculates n-th item of Fibonacci sequence
Birçok erkek buna yapışabilir. Bazı çözümler verilirse - genellikle özyineleme kullanır. Daha sonra:
Implement the same via 'for'-loop
Söyleyemem, kaç adam her iki görevi de tamamlayamıyor - adayların% 50'si.
Bu yüzden hoşuma gidiyor :)
fib(n)=round(power(PHI,n)/SQRT5)
. PHI ve SQRT5, sırasıyla altın oranını (1.618 ...) ve 5'in karekökünü temsil eden sabitlerdir.
Veritabanları için gidiyorum:
Tablo: Şeyler ID Adı 1 Bodkin Van Horn 2 Hoos-Foos 3 Hoos-Foos 4 Sıcak Çekim 5 Marvin O'Gravel Balon Yüz 6 Snimm 7 Marvin O'Gravel Balon Yüz 8 Marvin O'Gravel Balon Yüz 9 Dave
Bana göre bu tür bir tabloyu kopyalayacak bir SQL yazın (ve hangi kimliği geri aldığım umrumda değil, hangisinin geri döndüğü o isim için geçerli olmalı). Dolayısıyla, doğru SQL uygulandıktan sonra, tablo şöyle bir şey sunacaktır:
Tablo: Şeyler ID Adı 1 Bodkin Van Horn 2 Hoos-Foos 4 Sıcak Çekim 5 Marvin O'Gravel Balon Yüz 6 Snimm 9 Dave
Beğendim çünkü:
(Bu, bunu yapmanın tamamen önemsiz bir yolu olduğunu ve bu yıllar boyunca onu karmaşık hale getirdiğim yerdeydi).
SELECT min(ID), Name FROM Things GROUP BY Name
şey işe yarayacak mı?
HAVING count(Name) > 1
, ama sanırım örnek cevabınız Bodkin Van Horn, Hot Shot, Snimm ve Dave'i göz ardı etmeli.
DELETE FROM Things WHERE ID NOT IN (SELECT MIN(ID) FROM Things GROUP BY Name)
. Tercih edilen bir çözümünüz var mı?
En sevdiğim C ++ beyaz tahta sorunu, adayı uygulamaktır.
Vector3 a(1, 0, 0), b(0, 1, 0); // Mathematical 3D vectors
double c = 7.0;
double d = a * c;
Vector3 e = a * b;
Bundan öğrenebilirim
Standart 52 kart destesini nasıl temsil edersiniz? Herhangi bir programlama dili iyi. Kartları nasıl karıştırırsın?
Benim favorim printf prototipini sormaya başlamak. Daha sonra bir karakter basacak olan düşük seviyeli bir API printc (karakter c) verilirse, printf uygulanır. Yığını gibi her türlü ilginç yanıtı CPU'nun bir parçası olarak verir. Tahmin edebileceğiniz gibi ben bir C ve gömülü arka plandan geliyorum.
varargs()
veya bunun gibi bir işlev yapmanız gerekir . Doğrumuyum? Bir süre önce yaptığımı söylemek için sadece bir kez yaptım.
İçinde 200 balık olan bir kaseniz var. Bu balıkların% 99'u lepistes değildir. Kalan balığın% 2'sinin lepistes olması için kaç tane balık çıkarmalısınız. İşini göster.
Bu kafa karıştırıcı gerekliliklerle ilgilidir. Aynı soruda bakış açılarını birkaç kez değiştirmenin bu şekilde söylendiği söylenir. Gerçekten neler olup bittiğini anlayabileceklerini görmek içindir.
Kaç kişinin yanlış anladığına şaşıracaksın.
answer = 100
. [Diğer balıkları seçerek seçebileceğinizi varsayalım. Eğer lepistesleri kaldırırsanız, başka cevaplar da var.] Güzel soru, bir programcının çocuk oyuncağı olmasına rağmen, birkaç kişinin bu kadar iyi idare etmesine şaşırırsınız.
Birkaç favorim var, ama işte neredeyse her zaman ortaya çıkan bir çift. Çoğu zaman final turu teknik (C ++) röportajları yapıyorum, bu nedenle yeni ilgi alanlarına yol açan daha uzun ve daha açık soruları destekliyor. 'Doğru' bir cevap yok, sadece başka bir konuşmaya açılıyor.
1) Temel bir paylaşılan işaretçi uygulamak, tr1 veya destekleyicilerin uygulamalarındaki paylaşılan işaretçilerle karşılaştırıldığında eksikliklerin olduğu yerler, bunların nasıl kullanılması gerektiği vs.
2) Bir kod incelemesi. Deneyimli elemanlar için, tasarım sorunları, hatalar, kodlama korkuları ve olası sürdürülebilirlik sorunları için verilmiş olan bazı kodları güvenle gözden geçirmelerini bekliyoruz. Ayrıca, elbette, nasıl düzelteceklerini; ve bazen bu mesajı, geliştirdikleri genç geliştiriciye nasıl verdiklerini.
Benden kullandığımdan beri kullandığım bir soru şudur:
1 ile 100 arasındaki tüm sayıları yazdırmak için bir işlev yazın.
Onu kullanmamın nedeninin büyük bir kısmı, o zaman çözümünü alıp çeşitli yöne hareket ettirebilmenizden kaynaklanıyor:
1 ile 1000, 10000 veya n arasındaki tüm sayıları yazdırmak için işlevi nasıl değiştirirsiniz ?
Bu sorulara verdikleri cevaplar, değişen gereksinimlere nasıl yanıt verdikleri ve performansla ilgili düşünceleri tanıyabilecekleri konusunda size fikir verebilir. Güçlü bir aday, hangi sıklıkta çağrılacağı için işlevin ne için gerekli olduğu konusunda bir soruya cevap verebilir.
Farklı bir yöne hareket etmek:
Bu işlevin dakikada birkaç kez çağrılacağını ve performansın bir endişe olduğunu bilseydiniz şeyleri nasıl değiştirirsiniz?
Bunu onların yanal düşüncelerini kontrol etmenin bir yolu olarak kullanıyorum. Asal sayıların hesaplanması, maksimum değer büyüdükçe yavaşlayabileceğinden, bazen çözmeye çalıştığınız sorun temelinde ayarlanan bir tür hesaplanmış veya önceden hesaplanmış arama tablosunu kullanmak daha mantıklı olur.
İşte bazı düşünceleri kışkırtan bir şey var - Çok basit, biraz matematik içerir ve adayın temel bilgisayar tasarımı (taşma, sayısal gösterim, vb.) Bilgisini kontrol eder:
Giriş olarak bir çift X, Y tamsayısı alan ve X * Y'nin 10'a eşit şekilde bölünebilir olup olmadığını belirleyen bir program (veya prosedür) yazın. makinenizde.
T_BOOL MultipleOfTen(int x, int y)
{
return((x%2==0 || y%2==0) && (x%5==0 || y%5==0));
}
Aşağıdaki yöntemi doldurun: PS Bir sayı modu, en çok meydana gelen sayıdır (listede).
public int getMode(List<Integer> numberList) {
}
Bu verimli görmek için sizin kodunuzdur.
Göreceli olarak büyük olan bir yedek matrisi nasıl temsil ederdiniz?