ByteDance Interview Otázky

Otázky k pohovoru o návrhu systému může být tak otevřený, že je příliš těžké znát správný způsob přípravy. Nyní jsem schopen po nákupu prolomit designová kola Amazon, Microsoft a Adobe tato kniha. Denně jedna revize designová otázka a slibuji, že ten design dokážeš rozlousknout.

Rozhovory o návrhu systému Crack

Otázky týkající se pole ByteDance

Otázka 1. Řešení Continuous Subarray Sum LeetCode Prohlášení problému Souvislý součet dílčích polí LeetCode Řešení – Vzhledem k celočíselnému poli nums a celému číslu k vrátí hodnotu true, pokud má nums spojité podpole o velikosti alespoň dva, jejichž součet prvků je násobkem k, nebo v opačném případě nepravda. Celé číslo x je násobkem k, pokud existuje celé číslo n takové, že x = n * k. 0 je vždy...

Dozvědět se více

Otázka 2. Top K Frequent Elements Řešení LeetCode Problémové prohlášení Nahoru K Časté prvky Řešení LeetCode říká, že – Vzhledem k celočíselnému poli nums a celému číslu k vrátí k nejčastějších prvků. Odpověď můžete vrátit v libovolném pořadí. Příklad 1: Vstup: nums = [1,1,1,2,2,3], k = 2 Výstup: [1,2] Příklad 2: Vstup: nums = [1], k = 1 Výstup: [1] ...

Dozvědět se více

Otázka 3. Minimální součet cesty Leetcode řešení Prohlášení o problému The Minimum Path Sum LeetCode Solution – „Minimum Path Sum“ říká, že daná anxm mřížka se skládá z nezáporných celých čísel a my potřebujeme najít cestu zleva shora dolů, která minimalizuje součet všech čísel na cestě. . Můžeme se jen pohybovat...

Dozvědět se více

Otázka 4. Vložit Delete GetRandom O(1) Leetcode Solution Prohlášení o problému Řešení LeetCode Insert Delete GetRandom O(1) – „Insert Delete GetRandom O(1)“ vás žádá o implementaci těchto čtyř funkcí v časové složitosti O(1). insert(val): Vloží hodnotu do randomizované sady a vrátí hodnotu true, pokud prvek v sadě původně chybí. Vrací false, když...

Dozvědět se více

Otázka 5. Denní teploty Řešení Leetcode Prohlášení o problému The Daily Temperatures Leetcode Solution: uvádí, že dané pole celočíselných teplot představuje denní teploty, vrátí odpověď pole tak, že odpověď[i] je počet dní, které musíte čekat po tém dni, abyste získali vyšší teplotu. Pokud neexistuje žádný budoucí den, pro který by to bylo možné, ponechte místo toho odpověď[i] == 0. ...

Dozvědět se více

Otázka 6. Další permutační řešení Leetcode Problémové prohlášení Další permutace Řešení LeetCode – „Další permutace“ uvádí, že dané pole celých čísel je permutací prvních n přirozených čísel. Potřebujeme najít další lexikograficky nejmenší permutaci daného pole. Náhrada musí být na místě a musí využívat pouze konstantní prostor navíc. ...

Dozvědět se více

Otázka 7. Řešení Leetcode pro zachycení dešťové vody Prohlášení o problému Řešení LeetCode Trapping Rain Water – „Zachycování dešťové vody“ uvádí, že dané pole výšek představuje výškovou mapu, kde šířka každého sloupce je 1. Musíme najít množství vody zachycené po dešti. Příklad: Vstup: výška = [0,1,0,2,1,0,1,3,2,1,2,1] Výstup: 6 Vysvětlení: Zkontrolujte ...

Dozvědět se více

Otázka 8. Řešení Leetcode rozdělení na K podmnožiny rovného součtu Prohlášení o problému Rozdělení na K podmnožiny rovného součtu Řešení LeetCode – „Oddíl na podmnožiny rovného součtu K“ uvádí, že jste dostali čísla celočíselného pole a celé číslo k, vraťte hodnotu true, pokud je možné mít k neprázdných podmnožin, jejichž součty jsou si všichni rovni. Příklad: Vstup: nums = [4,3,2,3,5,2,1], k = 4 Výstup: ...

Dozvědět se více

Otázka 9. Coin Change 2 Leetcode Solution Problémové prohlášení The Coin Change 2 LeetCode Solution – „Coin Change 2“ uvádí, že dané pole různých celých mincí a celočíselné množství představující celkovou částku peněz. Potřebujeme vrátit počet z celkového počtu různých možných kombinací, které se sčítají k částce. ...

Dozvědět se více

Otázka 10. Frog Jump Leetcode řešení Problémové prohlášení The Frog Jump Řešení LeetCode – „Frog Jump“ uvádí, že na základě seznamu kamenů (pozic) seřazených vzestupně určíte, zda žába může překročit řeku tak, že přistane na posledním kameni (poslední index pole). Zpočátku je žába na prvním kameni a ...

Dozvědět se více

Otázka 11. Řešení kombinace Leetcode Sum Řešení Combination Sum Leetcode Solution nám poskytuje pole nebo seznam celých čísel a cíl. Říká se nám, abychom našli kombinace, které lze provést pomocí těchto celých čísel, kolikrát se přidá k danému cíli. Formálně tedy můžeme použít dané ...

Dozvědět se více

Otázka 12. Maximální řešení Leetcode subarray Prohlášení o problému Vzhledem k číslům celočíselného pole vyhledejte souvislou podoblast (obsahující alespoň jedno číslo), která má největší součet, a vraťte její součet. Příklad nums = [-2,1, -3,4, -1,2,1, -5,4] 6 Vysvětlení: [4, -1,2,1] má největší součet = 6. nums = [- 1] -1 Přístup 1 (Rozděl a panuj) V tomto přístupu ...

Dozvědět se více

Otázka 13. Unikátní řešení Leetcode pro cesty Problém Řešení Uniet Paths Leetcode uvádí, že dostanete dvě celá čísla představující velikost mřížky. Pomocí velikosti mřížky, délky a šířky mřížky. Musíme najít počet jedinečných cest z levého horního rohu mřížky do ...

Dozvědět se více

Otázka 14. Sloučit řešení Leetcode seřazených polí V úloze „Sloučit seřazená pole“ dostaneme dvě pole seřazená v sestupném pořadí. První pole není plně vyplněno a má dostatek prostoru pro všechny prvky druhého pole. Musíme sloučit dvě pole, takže první pole obsahuje prvky ...

Dozvědět se více

Otázka 15. Hledat v řešení Leetcode s rotovaným seřazeným polem Zvažte seřazené pole, ale byl vybrán jeden index a pole bylo v tomto bodě otočeno. Nyní, když bylo pole otočeno, musíte najít konkrétní cílový prvek a vrátit jeho index. V případě, že prvek není k dispozici, vraťte -1. Problém je obecně ...

Dozvědět se více

Otázka 16. K-největší prvek v Array Leetcode Solutions V tomto problému musíme vrátit k-tý největší prvek v netříděném poli. Všimněte si, že pole může mít duplikáty. Musíme tedy najít Kth největší prvek v seřazeném pořadí, ne zřetelný Kth největší prvek. Příklad A = {4, 2, 5, 3 ...

Dozvědět se více

Otázka 17. Najděte první a poslední pozici prvku v řešení Leetcode seřazeného pole Prohlášení o problému V tomto článku s názvem „Najít první a poslední pozici prvku v řešení Leetcode seřazeného pole“ budeme diskutovat o řešení problému leetcode. V daném problému dostaneme pole. Dostaneme také cílový prvek. Prvky v poli jsou seřazeny v ...

Dozvědět se více

Otázka 18. Počítat všechny podsekvence, které mají produkt menší než K. Problém „Spočítat všechny subsekvence mající součin menší než K“ uvádí, že jste dostali řadu celých čísel. Nyní najděte počet podsekvencí, jejichž produkt je menší než daný vstup K. Příklad a [] = {1, 2, 3, 4, 5} k = 8 Počet podsekvencí méně ...

Dozvědět se více

Otázka 19. Po provedení příkazů sčítání a odčítání vytiskněte upravené pole Dostanete pole velikosti n, zpočátku budou všechny hodnoty v poli 0 a dotazy. Každý dotaz obsahuje čtyři hodnoty, typ dotazu T, levý bod rozsahu, pravý bod rozsahu a číslo k, musíte ...

Dozvědět se více

Otázka 20. Nejlepší čas na nákup a prodej akcií Prohlášení o problému Problém „Nejlepší čas na nákup a prodej akcií“ uvádí, že vám je dána řada cen o délce n, kde i-tý prvek ukládá cenu akcií na i-tý den. Pokud můžeme provést pouze jednu transakci, to znamená koupit v jeden den a ...

Dozvědět se více

Otázka 21. Nejlepší K časté prvky Prohlášení o problému V horních K častých prvcích jsme zadali pole nums [], najděte nejčastěji se vyskytujících prvků. Příklady nums [] = {1, 1, 1, 2, 2, 3} k = 2 1 2 nums [] = {1} k = 1 1 Naivní přístup k vytváření nejlepších K častých prvků ...

Dozvědět se více

Otázka 22. Součet minimálních a maximálních prvků všech podskupin o velikosti k Prohlášení o problému Problém „Součet minimálních a maximálních prvků všech podskupin velikosti k“ uvádí, že jste dostali pole obsahující kladná a záporná celá čísla, najděte součet minimálních a maximálních prvků všech podskupin velikosti k. Příklady arr [] = {5, 9, 8, 3, ...

Dozvědět se více

Otázka 23. Minimální počet odlišných prvků po odebrání m položek Prohlášení o problému Problém „Minimální počet odlišných prvků po odebrání m položek“ uvádí, že máte pole a celé číslo m. Každý prvek pole označuje ID položky. Prohlášení o problému požaduje odstranění m prvků takovým způsobem, že by mělo existovat minimum ...

Dozvědět se více

Otázka 24. Podmnožina Leetcode V Subset Leetcode problému jsme dali sadu odlišných celých čísel, čísel, vytisknout všechny podmnožiny (power set). Poznámka: Sada řešení nesmí obsahovat duplicitní podmnožiny. Pole A je podmnožinou pole B, pokud lze a získat z B odstraněním některých (možná nula ...

Dozvědět se více

Otázka 25. Word Search Hledání slov je něco jako skládačky slov v určité době našeho života. Dnes přinesu ke stolu upravenou křížovku. Moji čtenáři musí být trochu zmateni, o čem mluvím. Bez zbytečného plýtvání časem se dostáváme k prohlášení o problému Může ...

Dozvědět se více

Otázka 26. Medián dvou seřazených polí Vzhledem k tomu, dvě tříděná pole A a B o velikosti n resp. Najděte medián konečného seřazeného pole získaného po sloučení daných dvou polí nebo jinými slovy, řekneme, že najdeme medián dvou seřazených polí. (Očekávaná časová složitost: O (log (n))) Přístup 1 pro ...

Dozvědět se více

Otázka 27. Hledejte prvek v seřazeném otočeném poli Při hledání v problému seřazeného otočeného pole jsme dali seřazené a otočené pole a prvek, zkontrolujte, zda je daný prvek v poli přítomen nebo ne. Příklady Vstupní čísla [] = {2, 5, 6, 0, 0, 1, 2} target = 0 Výstupní pravda Vstupní čísla [] = {2, ...

Dozvědět se více

Otázka 28. Hledat v seřazeném otočeném poli Hledání prvků v seřazeném otočeném poli lze najít pomocí binárního vyhledávání v čase O (logn). Cílem tohoto příspěvku je najít daný prvek v seřazeném otočeném poli v čase O (logn). Je uveden příklad seřazeného otočeného pole. Příklad vstupu: arr [] = {7,8,9,10,1,2,3,5,6}; ...

Dozvědět se více

Otázka 29. Maximální dílčí pole V úloze Maximum Subarray jsme zadali čísla celočíselného pole, najděte souvislé dílčí pole, které má největší součet, a vytiskněte hodnotu maximálního součtu podskupiny. Příklad Vstupní čísla [] = {-2, 1, -3, 4, -1, 2, 1, -5, 4} Výstup 6 Algoritmus Cílem je najít ...

Dozvědět se více

Otázka 30. Najděte prvek Peak Pojďme pochopit problém Najít špičkový prvek. Dnes máme s sebou pole, které potřebuje svůj vrcholný prvek. Teď vás musí zajímat, co mám na mysli pod vrcholným prvkem? Vrcholový prvek je ten, který je větší než všichni jeho sousedé. Příklad: Vzhledem k řadě ...

Dozvědět se více

Otázka 31. Problém se změnou mince Problém se změnou mincí - Vzhledem k některým mincím různých hodnot c1, c2,…, cs (například: 1,4,7….). Potřebujeme částku n. Pomocí těchto daných mincí vytvořte částku n. Mince můžete použít tolikrát, kolikrát je potřeba. Najděte celkový počet způsobů, jak ...

Dozvědět se více

Otázka 32. Maximální součet dílčího pole pomocí Divide and Conquer Prohlášení o problému V úloze „Maximální součet dílčích polí pomocí Divide and Conquer“ jsme uvedli pole kladných i záporných celých čísel. Napište program, který najde největší součet souvislé podoblasti. Formát vstupu První řádek obsahující celé číslo N. Druhý řádek obsahující pole ...

Dozvědět se více

Otázka 33. Uspořádejte daná čísla tak, aby tvořila největší číslo II Prohlášení o problému V úloze „Uspořádat zadaná čísla tak, aby tvořily největší číslo II“ jsme uvedli řadu kladných celých čísel. Uspořádejte je tak, aby uspořádání vytvořilo největší hodnotu. Vstupní formát První a jediný řádek obsahující celé číslo n. Druhý řádek obsahující ...

Dozvědět se více

Otázka 34. Maximální následnost zvyšující součet Prohlášení o problému V problému „Posloupnost zvyšující maximální součet“ jsme zadali pole. Najděte součet maximální subsekvence daného pole, tj. Celá čísla v subsekvenci jsou seřazená. Subsekvence je část pole, což je sekvence, která je ...

Dozvědět se více

Otázka 35. Najděte prvek Peak z pole Prohlášení o problému V úloze „Najít prvek Peak z pole“ jsme zadali vstupní pole celých čísel. Najděte špičkový prvek. V poli je prvek špičkovým prvkem, pokud je prvek větší než oba sousedé. U rohových prvků můžeme považovat jediný ...

Dozvědět se více

Otázka 36. Problém s oddílem Prohlášení o problému V problému s oddílem jsme zadali množinu, která obsahuje n prvků. Zjistěte, zda lze danou množinu rozdělit na dvě sady, jejichž součet prvků v podmnožinách je stejný. Příklad Vstupní vstup [] = {4, 5, 11, 9, 8, 3} Výstup Ano Vysvětlení Pole ...

Dozvědět se více

Otázka 37. Podoblast s daným součtem Prohlášení o problému V dílčím poli s daným součtovým problémem jsme dali pole obsahující n kladných prvků. Musíme najít podoblast, ve které se součet všech prvků podoblastí rovná danému součtu. Subarray se získá z původního pole odstraněním některých ...

Dozvědět se více

Otázka 38. Sloučit dvě seřazená pole Prohlášení o problému Při sloučení problému se dvěma seřazenými poli jsme zadali dvě vstupní seřazená pole, musíme tato dvě pole sloučit tak, aby počáteční čísla po úplném třídění měla být v prvním poli a zbývající ve druhém poli. Příklad vstupu A [] = {1, 3, 5, 7, ...

Dozvědět se více

Otázka 39. Počet trojic se součtem menším než daná hodnota Prohlášení o problému Dali jsme pole obsahující N počet prvků. V daném poli spočítejte počet tripletů se součtem menším než je daná hodnota. Příklad Vstup a [] = {1, 2, 3, 4, 5, 6, 7, 8} Součet = 10 Výstup 7 Možné trojice jsou: ...

Dozvědět se více

Otázka 40. Sloučení dvou seřazených polí Prohlášení o problému Při sloučení problému se dvěma seřazenými poli jsme dali dvě seřazená pole, jedno pole o velikosti m + n a druhé pole o velikosti n. Sloučíme pole velikosti n do pole velikosti m + n a vytiskneme sloučené pole velikosti m + n. Příklad vstupu 6 3 M [] = ...

Dozvědět se více

Otázka 41. Najděte trojici v poli s danou sumou Prohlášení o problému Vzhledem k řadě celých čísel najděte kombinaci tří prvků v poli, jejichž součet se rovná dané hodnotě X. Zde vytiskneme první kombinaci, kterou dostaneme. Pokud taková kombinace neexistuje, vytiskněte -1. Příklad vstupu N = 5, X = 15 arr [] = ...

Dozvědět se více

Otázka 42. Nejmenší kladné číslo chybí v netříděném poli Prohlášení o problému V daném netříděném poli najděte nejmenší kladné číslo chybějící v netříděném poli. Kladné celé číslo nezahrnuje 0. V případě potřeby můžeme původní pole upravit. Pole může obsahovat kladná a záporná čísla. Příklad a. Vstupní pole: [3, 4, -1, 0, -2, 2, 1, ...

Dozvědět se více

Otázka 43. Přesuňte všechny nuly na konec daného pole Prohlášení o problému V daném poli přesuňte všechny nuly, které jsou v poli, na konec pole. Zde vždy existuje způsob, jak vložit veškerý počet nul na konec pole. Příklad vstupu 9 9 17 0 14 0 ...

Dozvědět se více

Otázka 44. Počítat počet výskytů ve tříděném poli Prohlášení o problému V problému „Počítat počet výskytů ve tříděném poli“ jsme zadali seřazené pole. Spočítat počet výskytů nebo frekvenci v seřazeném poli X, kde X je celé číslo. Příklad vstupu 13 1 2 2 2 2 3 3 3 4 4 ...

Dozvědět se více

Otázka 45. Puzzle s produktovým polem Prohlášení o problému V logickém problému s produktovým polem musíme zkonstruovat pole, kde i-tý prvek bude součinem všech prvků v daném poli, kromě prvku na i-té pozici. Příklad Vstup 5 10 3 5 6 2 Výstup 180 600 360 300 900 ...

Dozvědět se více

Otázka 46. Majoritní prvek Prohlášení o problému Vzhledem k seřazenému poli musíme najít většinový prvek z seřazeného pole. Majoritní prvek: Počet, který se vyskytuje více než polovinu velikosti pole. Zde jsme zadali číslo x, musíme zkontrolovat, zda je majoritním prvkem nebo ne. Příklad vstupu 5 2 ...

Dozvědět se více

Řetězcové otázky ByteDance

Otázka 47. Skóre řešení LeetCode závorek Problémové prohlášení Skóre Parenthesis LeetCode Solution říká – Při vyvážených závorkách řetězec s a vrátí maximální skóre. Skóre řetězce vyvážených závorek je založeno na následujících pravidlech: „()“ má skóre 1. AB má skóre A + B, kde A a B jsou řetězce vyvážených závorek. (A) má skóre 2 * A, kde A je ...

Dozvědět se více

Otázka 48. Návrh datové struktury pro přidávání a vyhledávání slov Řešení LeetCode Prohlášení o problému: Navrhněte datovou strukturu přidat a vyhledat slova Řešení LeetCode říká – Navrhněte datovou strukturu, která podporuje přidávání nových slov a zjišťování, zda se řetězec shoduje s dříve přidaným řetězcem. Implementujte třídu WordDictionary: WordDictionary() Inicializuje objekt. void addWord(word) Přidá slovo do datové struktury, lze jej později spárovat. bool search(word) Vrátí hodnotu true, pokud existuje ...

Dozvědět se více

Otázka 49. Řešení Decode String Leetcode Prohlášení o problému The Decode String LeetCode Solution – „Decode String“ vás žádá o převod zakódovaného řetězce na dekódovaný řetězec. Kódovací pravidlo je k[encoded_string], kde kódovaný_řetězec uvnitř hranatých závorek se opakuje přesně kkrát, kde k je kladné celé číslo. Příklad: Vstup: s = "3[a]2[bc]" Výstup: "aaabcbc" ...

Dozvědět se více

Otázka 50. Různé způsoby, jak přidat řešení Leetcode se závorkami Problémové prohlášení Různé způsoby přidávání závorek Řešení LeetCode – „Různé způsoby přidávání závorek“ uvádí, že daný řetězcový výraz čísel a operátorů. Potřebujeme vrátit všechny možné výsledky z výpočtu všech různých možných způsobů seskupování čísel a operátorů. Vraťte odpověď v libovolném pořadí. ...

Dozvědět se více

Otázka 51. Řešení generování závorek Leetcode Prohlášení o problému The Generate Parentheses LeetCode Solution – „Generate Parentheses“ uvádí, že vzhledem k hodnotě n. Potřebujeme vygenerovat všechny kombinace n párů závorek. Vraťte odpověď ve formě vektoru řetězců správně vytvořených závorek. Příklad: Vstup: n = 3 Výstup: ["((()))","(()())","(())()","()(())","()( )()"] Vysvětlení: ...

Dozvědět se více

Otázka 52. Řešení s největším číslem Leetcode Problémové prohlášení Největší číslo Řešení LeetCode – „Největší číslo“ uvádí, že daný seznam nezáporných celých čísel potřebujeme uspořádat čísla tak, aby tvořila největší číslo a vrátit je. Protože výsledek může být velmi velký, musíte se vrátit ...

Dozvědět se více

Otázka 53. Implementujte řešení Leetcode Trie (Prefix Tree). Prohlášení o problému Řešení LeetCode Implement Trie (Prefix Tree) – „Implement Trie (Prefix Tree)“ vás žádá o implementaci Trie Data Structure, která efektivně provádí vkládání, vyhledávání a vyhledávání prefixů. Příklad: Vstup: ["Trie", "insert", "search", "search", "startsWith", "insert", "search"] [[], ["apple"], ["apple"], [ "app"], ["app"], ["app"], ["app"]] Výstup: [null, null, true, false, true, null, true] Vysvětlení: Po vložení všech řetězců zkuste takhle. Hledá se slovo jablko, které...

Dozvědět se více

Otázka 54. Odstraňte řešení Leetcode s neplatnými závorkami Problem Statement The Remove Invalid Parentheses Leetcode Solution – uvádí, že jste dostali řetězec s, který obsahuje závorky a malá písmena. Aby byl vstupní řetězec platný, musíme odstranit minimální počet neplatných závorek. Potřebujeme vrátit všechny možné výsledky v libovolném pořadí. Řetězec je...

Dozvědět se více

Otázka 55. Znásobte řetězce řetězce Leetcode Problém Řešení Multiple Strings Leetcode nás žádá, abychom vynásobili dva řetězce, které jsou nám dány jako vstup. Jsme povinni tento výsledek vynásobení funkcí volajícího vytisknout nebo vrátit. Chcete-li tedy formálně dát dva řetězce, najděte součin daných řetězců. ...

Dozvědět se více

Otázka 56. Nejdelší opakovaná posloupnost Problém „Nejdelší opakovaná posloupnost“ uvádí, že vám byl zadán řetězec jako vstup. Zjistěte nejdelší opakovanou sekvenci, tj. Sekvenci, která v řetězci existuje dvakrát. Příklad aeafbdfdg 3 (afd) Přístup Problém nás žádá, abychom našli nejdelší opakovanou posloupnost v řetězci. ...

Dozvědět se více

Otázka 57. Nejdelší podřetězec bez opakujících se znaků Řešení LeetCode Nejdelší podřetězec bez opakujících se znaků Řešení LeetCode – Vzhledem k řetězci musíme najít délku nejdelšího podřetězce bez opakování znaků. Podívejme se na několik příkladů: Příklad pwwkew 3 Vysvětlení: Odpověď je „wke“ s délkou 3 aav 2 Vysvětlení: Odpověď je „av“ s délkou 2 Přístup-1 ...

Dozvědět se více

Otázka 58. Palindromové podřetězcové dotazy Prohlášení o problému Problém „Palindrome Substring Queries“ uvádí, že vám byl zadán řetězec a některé dotazy. S těmito dotazy musíte určit, zda je vytvořený podřetězec z tohoto dotazu palindrom nebo ne. Příklad řetězce str = "aaabbabbaaa" Dotazy q [] = {{2, 3}, {2, 8}, {5, 7}, ...

Dozvědět se více

Otázka 59. Transformace maximální hmotnosti daného řetězce Prohlášení o problému Transformace maximální hmotnosti daného problému s řetězcem uvádí, že daný řetězec se skládá pouze ze dvou znaků „A“ a „B“. Máme operaci, kde můžeme transformovat řetězec na jiný řetězec přepnutím libovolného znaku. Je tedy možné mnoho transformací. Ze všech možných ...

Dozvědět se více

Otázka 60. Upravit vzdálenost V problému úpravy vzdálenosti musíme najít minimální počet operací potřebných k převodu řetězce X o délce n na jiný řetězec Y o délce m. Povolené operace: Vložení Vymazání Substituce Příklad Vstup: String1 = “abcd” String2 = “abe” Výstup: Minimální požadované operace jsou 2 (...

Dozvědět se více

Otázka 61. Dekódujte řetězec Předpokládejme, že dostanete kódovaný řetězec. Řetězec je zakódován v nějakém druhu vzoru, vaším úkolem je řetězec dekódovat. Řekněme, <není počet řetězců> [řetězec] Příklad Vstup 3 [b] 2 [bc] Výstup bbbcaca Vysvětlení Zde se „b“ vyskytuje třikrát a „ca“ se vyskytuje dvakrát. ...

Dozvědět se více

Otázka 62. Další permutace V dalším problému s permutací, který jsme dali slovu, najděte jeho lexikograficky větší permutaci. Příklad vstupu: str = "tutorialcup" výstup: tutorialpcu vstup: str = "nmhdgfecba" výstup: nmheabcdfg vstup: str = "algoritmy" výstup: algoritmus vstup: str = "spoonfeed" výstup: Další permutace ...

Dozvědět se více

Otázka 63. Platné závorky řešení LeetCode V problému Valid Parentheses LeetCode jsme dali řetězec obsahující pouze znaky '(', ')', '{', '}', '[' a ']', určující, zda je vstupní řetězec platný. Zde vám poskytneme platné řešení LeetCode pro závorky. Vstupní řetězec je platný, pokud: Otevřené závorky musí být uzavřeny ...

Dozvědět se více

Otázka 64. Permutace daného řetězce pomocí STL Prohlášení o problému V problému „Permutace daného řetězce pomocí STL“ jsme zadali řetězec „s“. Vytiskněte všechny permutace vstupního řetězce pomocí funkcí STL. Vstupní formát První a jediný řádek obsahující řetězec „s“. Výstupní formát Vytiskne veškerou permutaci daného ...

Dozvědět se více

Otázka 65. Délka nejdelšího platného podřetězce Prohlášení o problému V části „Délka nejdelšího platného podřetězce“ jsme zadali řetězec, který obsahuje pouze úvodní a závěrečnou závorku. Napište program, který najde nejdelší platný podřetězec v závorkách. Vstupní formát První a jediný řádek obsahující řetězec s. Výstupní formát První a ...

Dozvědět se více

Otázka 66. Nejmenší okno v řetězci obsahující všechny znaky jiného řetězce Najděte nejkratší podřetězec v daném řetězci, který obsahuje všechny znaky daného slova nebo Najděte nejmenší okno v řetězci obsahujícím všechny znaky jiného řetězce Zadané dva řetězce s a t napište funkci, která najde minimální okno v s, které vůle ...

Dozvědět se více

Otázka 67. Uspořádejte daná čísla tak, aby tvořila největší číslo II Prohlášení o problému V úloze „Uspořádat zadaná čísla tak, aby tvořily největší číslo II“ jsme uvedli řadu kladných celých čísel. Uspořádejte je tak, aby uspořádání vytvořilo největší hodnotu. Vstupní formát První a jediný řádek obsahující celé číslo n. Druhý řádek obsahující ...

Dozvědět se více

Otázky ke stromu ByteDance

Otázka 68. Vertikální procházení pořadí binárního stromu řešení LeetCode Prohlášení o problému Vertikální procházení binárního stromu Řešení LeetCode říká – Vzhledem ke kořenu binárního stromu vypočítejte vertikální procházení binárního stromu. Pro každý uzel na pozici (řádek, sloupec) budou jeho levé a pravé potomky na pozicích (řádek + 1, sloupec - 1) a (řádek + 1, sloupec + 1). ...

Dozvědět se více

Otázka 69. Srovnat binární strom do propojeného seznamu řešení LeetCode Sloučit binární strom do propojeného seznamu Řešení LeetCode říká, že – Vzhledem ke kořenu binárního stromu srovnejte strom do „propojeného seznamu“: „Propojený seznam“ by měl používat stejnou třídu TreeNode, kde pravý podřízený ukazatel ukazuje na další uzel. v seznamu a levý podřízený ukazatel má vždy hodnotu null. "Propojený seznam"...

Dozvědět se více

Otázka 70. Nejnižší společný předek řešení Leetcode Binary Tree Problémové prohlášení Nejnižší společný předek binárního stromu Řešení LeetCode – „Nejnižší společný předek binárního stromu“ uvádí, že daný kořen binárního stromu a dva uzly stromu. Musíme najít nejnižšího společného předka těchto dvou uzlů. Nejnižší běžné...

Dozvědět se více

Otázka 71. Odstraňte uzly a vraťte řešení Forest Leetcode Prohlášení o problému Řešení LeetCode Delete Nodes and Return Forest – „Delete Nodes and Return Forest“ uvádí, že vzhledem ke kořeni binárního stromu má každý uzel odlišnou hodnotu. Máme také pole to_delete, kde potřebujeme smazat všechny uzly s hodnotami obsaženými v ...

Dozvědět se více

Otázka 72. Obnovte řešení Leetcode Binary Search Tree Prohlášení o problému The Recover Binary Search Tree LeetCode Solution – “Recover Binary Search Tree” uvádí, že daný kořen binárního vyhledávacího stromu, kde jsou omylem prohozeny hodnoty právě dvou uzlů. Potřebujeme obnovit strom, aniž bychom změnili jeho strukturu. Příklad: Vstup: root = [1,3,null,null,2] Výstup: [3,1,null,null,2] ...

Dozvědět se více

Otázka 73. Minimální počet odlišných prvků po odebrání m položek Prohlášení o problému Problém „Minimální počet odlišných prvků po odebrání m položek“ uvádí, že máte pole a celé číslo m. Každý prvek pole označuje ID položky. Prohlášení o problému požaduje odstranění m prvků takovým způsobem, že by mělo existovat minimum ...

Dozvědět se více

Otázka 74. Převést BST na minimální hromadu Prohlášení o problému Vzhledem k úplnému binárnímu vyhledávacímu stromu napište algoritmus, který jej převede na minimální hromadu, což je převod BST na minimální hromadu. Minimální hromada by měla být taková, že hodnoty nalevo od uzlu musí být menší než hodnoty napravo ...

Dozvědět se více

Otázka 75. Převést normální BST na vyvážený BST Prohlášení o problému Vzhledem k binárnímu vyhledávacímu stromu (BST) napište algoritmus pro převod BST na vyvážený binární vyhledávací strom. Vyvážený binární vyhledávací strom není nic jiného než binární vyhledávací strom, jehož rozdíl mezi výškou levého podstromu a pravého podstromu je menší nebo roven 1. ...

Dozvědět se více

Otázka 76. Zkonstruujte binární strom z daných Inorder a předobjednejte Traversals V tomto problému máme pořadí a předobjednávku binárního stromu. Musíme postavit binární strom z daných přechodů Inorder a Preorder. Příklad vstupu: Inorder = [D, B, E, A, F, C] Preorder = [A, B, D, E, C, F] Výstup: Předobjednávka prochází stromem tvořeným ...

Dozvědět se více

Otázka 77. Obnovte binární vyhledávací strom Zvažte binární vyhledávací strom, dva uzly stromu byly zaměněny, navrhněte algoritmus pro obnovení binárního vyhledávacího stromu. Příklad Zvažte níže uvedený binární vyhledávací strom, jehož dva uzly byly zaměněny jako vstup. Jsou detekovány (zvýrazněny) nesprávné uzly na BST a poté vyměněny za získání ...

Dozvědět se více

Otázka 78. Ověřte strom binárního vyhledávání Problém Při ověřování problému s binárním vyhledávacím stromem, který jsme zadali kořen stromu, musíme zkontrolovat, zda se jedná o binární vyhledávací strom nebo ne. Příklad: Výstup: true Vysvětlení: Daný strom je binární vyhledávací strom, protože všechny prvky, které jsou ponechány každému podstromu ...

Dozvědět se více

Otázky grafu ByteDance

Otázka 79. Je graf bipartitní? Řešení LeetCode Problémové prohlášení je graf Bipartite LeetCode Řešení- Existuje neorientovaný graf s n uzly, kde každý uzel je očíslován mezi 0 a n - 1. Dostanete 2D graf pole, kde graph[u] je pole uzlů, které uzel u sousedí s. Formálněji řečeno, pro každé v v grafu[u] existuje mezi uzlem u a uzlem v neorientovaná hrana. Graf má ...

Dozvědět se více

Otázky ohledně sady ByteDance

Otázka 80. Skóre řešení LeetCode závorek Problémové prohlášení Skóre Parenthesis LeetCode Solution říká – Při vyvážených závorkách řetězec s a vrátí maximální skóre. Skóre řetězce vyvážených závorek je založeno na následujících pravidlech: „()“ má skóre 1. AB má skóre A + B, kde A a B jsou řetězce vyvážených závorek. (A) má skóre 2 * A, kde A je ...

Dozvědět se více

Otázka 81. Řešení Decode String Leetcode Prohlášení o problému The Decode String LeetCode Solution – „Decode String“ vás žádá o převod zakódovaného řetězce na dekódovaný řetězec. Kódovací pravidlo je k[encoded_string], kde kódovaný_řetězec uvnitř hranatých závorek se opakuje přesně kkrát, kde k je kladné celé číslo. Příklad: Vstup: s = "3[a]2[bc]" Výstup: "aaabcbc" ...

Dozvědět se více

Otázka 82. Srovnat binární strom do propojeného seznamu řešení LeetCode Sloučit binární strom do propojeného seznamu Řešení LeetCode říká, že – Vzhledem ke kořenu binárního stromu srovnejte strom do „propojeného seznamu“: „Propojený seznam“ by měl používat stejnou třídu TreeNode, kde pravý podřízený ukazatel ukazuje na další uzel. v seznamu a levý podřízený ukazatel má vždy hodnotu null. "Propojený seznam"...

Dozvědět se více

Otázka 83. Přidejte řešení Leetcode Two Numbers II Prohlášení o problému Řešení LeetCode Add Two Numbers II – „Add Two Numbers II“ uvádí, že dva neprázdné propojené seznamy představují dvě nezáporná celá čísla, kde nejvýznamnější číslice je na prvním místě a každý uzel obsahuje právě jednu číslici. Musíme sečíst dvě čísla a vrátit součet jako ...

Dozvědět se více

Otázka 84. Denní teploty Řešení Leetcode Prohlášení o problému The Daily Temperatures Leetcode Solution: uvádí, že dané pole celočíselných teplot představuje denní teploty, vrátí odpověď pole tak, že odpověď[i] je počet dní, které musíte čekat po tém dni, abyste získali vyšší teplotu. Pokud neexistuje žádný budoucí den, pro který by to bylo možné, ponechte místo toho odpověď[i] == 0. ...

Dozvědět se více

Otázka 85. Řešení Leetcode pro zachycení dešťové vody Prohlášení o problému Řešení LeetCode Trapping Rain Water – „Zachycování dešťové vody“ uvádí, že dané pole výšek představuje výškovou mapu, kde šířka každého sloupce je 1. Musíme najít množství vody zachycené po dešti. Příklad: Vstup: výška = [0,1,0,2,1,0,1,3,2,1,2,1] Výstup: 6 Vysvětlení: Zkontrolujte ...

Dozvědět se více

Otázka 86. Dekódujte řetězec Předpokládejme, že dostanete kódovaný řetězec. Řetězec je zakódován v nějakém druhu vzoru, vaším úkolem je řetězec dekódovat. Řekněme, <není počet řetězců> [řetězec] Příklad Vstup 3 [b] 2 [bc] Výstup bbbcaca Vysvětlení Zde se „b“ vyskytuje třikrát a „ca“ se vyskytuje dvakrát. ...

Dozvědět se více

Otázky z fronty ByteDance

Otázka 87. Součet minimálních a maximálních prvků všech podskupin o velikosti k Prohlášení o problému Problém „Součet minimálních a maximálních prvků všech podskupin velikosti k“ uvádí, že jste dostali pole obsahující kladná a záporná celá čísla, najděte součet minimálních a maximálních prvků všech podskupin velikosti k. Příklady arr [] = {5, 9, 8, 3, ...

Dozvědět se více

Otázka 88. Rekonstrukce fronty podle výšky Popis problému Rekonstrukce fronty podle výšky Předpokládejme, že máte náhodný seznam lidí, kteří stojí ve frontě. Každá osoba je popsána dvojicí celých čísel (h, k), kde h je výška osoby a k je počet lidí před touto osobou ...

Dozvědět se více

Otázky Matice ByteDance

Otázka 89. Minimální součet cesty Leetcode řešení Prohlášení o problému The Minimum Path Sum LeetCode Solution – „Minimum Path Sum“ říká, že daná anxm mřížka se skládá z nezáporných celých čísel a my potřebujeme najít cestu zleva shora dolů, která minimalizuje součet všech čísel na cestě. . Můžeme se jen pohybovat...

Dozvědět se více

Otázka 90. Řešení Word Search Leetcode Prohlášení o problému Vzhledem k desce mxn a slovu vyhledejte, zda slovo existuje v mřížce. Slovo může být vytvořeno z písmen postupně sousedících buněk, kde „sousední“ buňky sousedí vodorovně nebo svisle. Stejnou buňku s písmeny nelze použít více než jednou. Příklad ...

Dozvědět se více

ByteDance Další otázky

Otázka 91. Platné číslo trojúhelníku LeetCode řešení Problémové prohlášení: Platné číslo trojúhelníku LeetCode Solution říká – Vzhledem k celočíselnému poli nums vraťte počet trojic vybraných z pole, které mohou tvořit trojúhelníky, pokud je vezmeme jako délky stran trojúhelníku. Příklad 1: Vstup: nums = [2,2,3,4] Výstup: 3 Vysvětlení: Platné kombinace jsou: 2,3,4 (pomocí ...

Dozvědět se více

Otázka 92. Řešení Leetcode odd Sudé propojeného seznamu Prohlášení o problému Řešení LeetCode odd-Even Linked List – „Lichý-Even Linked List“ uvádí, že daný neprázdný jednotlivě propojený seznam. Potřebujeme seskupit všechny uzly s lichými indexy a následně uzly se sudými indexy a vrátit přeuspořádaný seznam. Všimněte si, že relativní pořadí uvnitř obou ...

Dozvědět se více

Otázka 93. Robot Room Cleaner Leetcode Solution Prohlášení o problému Robot Room Cleaner LeetCode Solution – „Robot Room Cleaner“ uvádí, že daný robot je v binární mřížce amxna, kde 0 představuje zeď a 1 představuje prázdný slot. Počáteční pozice robota je zaručeně prázdná a robot se pohybuje uvnitř ...

Dozvědět se více

Otázka 94. Řešení LRU Cache Leetcode Prohlášení o problému Řešení LRU Cache LeetCode – „LRU Cache“ vás žádá o návrh datové struktury, která se řídí mezipamětí nejméně nedávno použitých (LRU) Potřebujeme implementovat třídu LRUCache, která má následující funkce: LRUCache(int capacity): Inicializuje mezipaměť LRU s kladnou velikostní kapacitou. int get (klíč int): Vrátí hodnotu ...

Dozvědět se více

Otázka 95. Sloučit k Tříděné seznamy Řešení Leetcode Prohlášení o problému The Merge k Sorted Lists LeetCode Solution – “Merge k Sorted Lists” uvádí, že vzhledem k poli k spojených seznamů, kde každý propojený seznam má své hodnoty seřazené vzestupně. Potřebujeme sloučit všechny k-propojené seznamy do jednoho jediného propojeného seznamu a vrátit ...

Dozvědět se více

Otázka 96. Odstraňte duplikáty z Sorted List Řešení LeetCode Prohlášení o problému Odstraňte duplikáty ze seřazeného seznamu Řešení LeetCode – Dostali jsme hlavu seřazeného propojeného seznamu. Jsme požádáni, abychom odstranili všechny duplikáty tak, aby se každý prvek objevil pouze jednou, a vrátili propojený seznam seřazený. Příklady a vysvětlení Příklad 1: Vstup: head ...

Dozvědět se více

Otázka 97. Klonovací graf řešení LeetCode Prohlášení o problému Klonování grafu LeetCode Řešení – Dostali jsme odkaz na uzel v připojeném neorientovaném grafu a jsme požádáni, abychom vrátili hlubokou kopii grafu. Hluboká kopie je v podstatě klon, kde žádný uzel přítomný v hluboké kopii by neměl mít odkaz ...

Dozvědět se více

Otázka 98. K. nejmenší prvek v řešení LeetCode Sorted Matrix Problémové prohlášení K-tý nejmenší prvek v uspořádané matici Řešení LeetCode – Dostali jsme matici velikosti n, kde jsou všechny řádky a sloupce seřazeny ve vzestupném pořadí. Jsme požádáni, abychom vrátili k-tý nejmenší prvek v matici. Všimněte si, že je to kth...

Dozvědět se více

Otázka 99. Počet hodů kostkou s cílovým součtem Řešení LeetCode Prohlášení o problému Počet hodů kostkou s cílovým součtem Řešení LeetCode – Máte n kostek a každá kostka má k ploch očíslovaných od 1 do k. Jsou-li dána tři celá čísla n, k a cíl, vraťte počet možných způsobů (z celkového počtu kn způsobů), jak hodit kostkou tak, aby se součet čísel lícem nahoru rovnal cíli. Protože odpověď může být...

Dozvědět se více

Otázka 100. Odstraňte duplikáty z řešení Sorted List II LeetCode Prohlášení o problému Odstraňte duplicitní položky z seřazeného seznamu II Řešení LeetCode – Vzhledem k hlavičce seřazeného propojeného seznamu odstraňte všechny uzly, které mají duplicitní čísla, přičemž z původního seznamu ponechte pouze odlišná čísla. Vraťte propojený seznam také seřazený. Vstup: head = [1,2,3,3,4,4,5] Výstup: [1,2,5] Vysvětlení Cílem je procházet ...

Dozvědět se více

Otázka 101. Nejkratší cesta v síti s odstraněním překážek Řešení LeetCode Problémové prohlášení Nejkratší cesta v mřížce s odstraněním překážek Řešení LeetCode – Je vám dána celočíselná maticová mřížka mxn, kde každá buňka je buď 0 (prázdná) nebo 1 (překážka). V jednom kroku se můžete přesunout nahoru, dolů, doleva nebo doprava z prázdné buňky a do prázdné buňky. Vraťte se z levého horního rohu na minimální počet kroků pro chůzi...

Dozvědět se více

Otázka 102. Invertujte binární strom řešení LeetCode Problémové prohlášení: Invertujte binární strom LeetCode Řešení – V této otázce je vzhledem ke kořenu libovolného binárního stromu nutné řešení invertovat binární strom, což znamená, že levý strom by se měl stát pravým stromem a naopak. Vysvětlení Můžeme si položit otázku, které procházení stromem by bylo...

Dozvědět se více

Otázka 103. Řešení N-Queens LeetCode Problémové řešení N-Queens LeetCode – Hádanka s n-královnami spočívá v umístění n královen na nxn šachovnici tak, aby na sebe žádné dvě královny neútočily. Je-li dané celé číslo n, vraťte všechna odlišná řešení do hádanky n-královen. Odpověď můžete vrátit v libovolném pořadí. Každé řešení obsahuje odlišnou konfiguraci desky...

Dozvědět se více

Otázka 104. Největší obdélník v řešení histogramu LeetCode Problémové prohlášení Největší obdélník v histogramu Řešení LeetCode – Vzhledem k poli výšek celých čísel představujících výšku sloupce histogramu, kde šířka každého sloupce je 1, vraťte plochu největšího obdélníku v histogramu. Příklad testovacího případu 1: Vstup: výšky = [2, 1, 5, 6, 2, 3] Výstup: 10 Vysvětlení: ...

Dozvědět se více

Otázka 105. Binární strom Pohled z pravé strany Řešení LeetCode Prohlášení problému Binární strom Pohled zprava LeetCode Řešení – Vzhledem ke kořeni binárního stromu si představte, že stojíte na jeho pravé straně, a vraťte hodnoty uzlů, které vidíte, seřazené shora dolů. Příklad testovacího případu 1: Vstup: root = [1, 2, 3, null, 5, null, ...

Dozvědět se více

Otázka 106. Řešení LeetCode úložiště klíč-hodnota založené na čase Prohlášení problému Časově založené úložiště klíč-hodnota Řešení LeetCode – Navrhněte časovou datovou strukturu klíč-hodnota, která může ukládat více hodnot pro stejný klíč v různých časových razítkách a načítat hodnotu klíče v určitém časovém razítku. Implementujte třídu TimeMap: TimeMap() Inicializuje objekt datové struktury. void set (řetězcový klíč, řetězec ...

Dozvědět se více

Otázka 107. Najděte medián z Data Stream řešení LeetCode Prohlášení o problému Najít medián z datového toku Řešení LeetCode – Medián je střední hodnota v seznamu uspořádaných celých čísel. Pokud je velikost seznamu sudá, neexistuje žádná střední hodnota a medián je průměr dvou středních hodnot. Například pro arr = [2,3,4] je medián ...

Dozvědět se více

Otázka 108. Permutace v řešení String Leetcode Prohlášení problému: Permutace v řetězcovém Leetcode řešení – Jsou-li dány dva řetězce s1 a s2, vraťte hodnotu true, pokud s2 obsahuje permutaci s1, nebo v opačném případě hodnotu false. Jinými slovy, vraťte true, pokud jedna z permutací s1 je podřetězcem s2. Příklad: Příklad 1 Vstup: s1 = "ab", s2 = "eidbaooo" Výstup: true Vysvětlení: s2 obsahuje jednu permutaci s1 ("ba"). ...

Dozvědět se více

Otázka 109. Řešení srážky asteroidů LeetCode Prohlášení o problému Kolize asteroidů LeetCode Řešení – Dostali jsme pole asteroidů celých čísel představujících asteroidy v řadě. Pro každý asteroid představuje absolutní hodnota jeho velikost a znaménko jeho směr (kladný význam vpravo, záporný význam vlevo). Každý asteroid se pohybuje stejnou rychlostí. Zjistěte stav...

Dozvědět se více

Otázka 110. Nejdelší rostoucí cesta v řešení Matrix LeetCode Problémové prohlášení Nejdelší rostoucí cesta v matici Řešení LeetCode – Vzhledem k matici mxn celých čísel vraťte délku nejdelší rostoucí cesty v matici. Z každé buňky se můžete pohybovat ve čtyřech směrech: doleva, doprava, nahoru nebo dolů. Nesmíte se pohybovat diagonálně ani se pohybovat mimo hranice (tj. není povoleno obtékání). Vstup: ...

Dozvědět se více

Otázka 111. Optimální řešení pro vyrovnávání účtů LeetCode Prohlášení o problému Optimální vyrovnání účtu Řešení LeetCode – Máte k dispozici řadu transakcí, kde transakce[i] = [fromi, toi, množstvíi] znamenají, že osoba s ID = fromi dala částkui $ osobě s ID = toi. Vraťte minimální počet transakcí potřebných k vyrovnání dluhu. Vstup: transakce = [[0,1,10],[2,0,5]] Výstup: 2 Vysvětlení: Osoba #0 ...

Dozvědět se více

Otázka 112. Serializujte a deserializujte binární strom řešení LeetCode Prohlášení o problému Serializovat a deserializovat binární strom Řešení LeetCode – Serializace je proces převodu datové struktury nebo objektu na sekvenci bitů tak, aby mohly být uloženy v souboru nebo vyrovnávací paměti nebo přenášeny prostřednictvím síťového připojení, aby mohly být později rekonstruovány. v ...

Dozvědět se více

Otázka 113. Binární strom Maximální součet cesty Řešení LeetCode Prohlášení o problému Binární strom Maximální součet cesty LeetCode Řešení – Cesta v binárním stromu je posloupnost uzlů, kde každý pár sousedních uzlů v posloupnosti má spojující hranu. Uzel se může v sekvenci objevit maximálně jednou. Všimněte si, že cesta nepotřebuje...

Dozvědět se více

Otázka 114. Minimální Knight Moves řešení LeetCode Problémové prohlášení Minimální tah jezdce LeetCode Řešení – V nekonečné šachovnici se souřadnicemi od -nekonečna do +nekonečna máte jezdce na poli [0, 0]. Rytíř má 8 možných tahů, které může provést, jak je znázorněno níže. Každý tah má dvě pole v hlavním směru, poté jedno pole v ortogonálním směru. Vraťte minimální počet...

Dozvědět se více

Otázka 115. Binární strom Cikcak Level Order Traversal řešení LeetCode Prohlášení problému Binary Tree Cikcak Level Order Traversal LeetCode Solution – Vzhledem ke kořeni binárního stromu vraťte cikcak level order procházení hodnot jeho uzlů. (tj. zleva doprava, pak zprava doleva pro další úroveň a střídání). Vstup: root = [3,9,20,null,null,15,7] Výstup: [[3],[20,9],[15,7]] Vysvětlení We ...

Dozvědět se více

Otázka 116. Chybějící prvek v řešení Sorted Array LeetCode Problém: Chybějící prvek v Sorted Array Řešení LeetCode – Vzhledem k celočíselným číslům pole, která jsou řazena vzestupně a všechny jeho prvky jsou jedinečné a je jim také celé číslo k, vrátí k-té chybějící číslo počínaje číslem zcela vlevo v poli. Příklad: Příklad 1 Vstup: nums = [4,7,9,10], k = ...

Dozvědět se více

Otázka 117. Alien Dictionary LeetCode řešení Problem Statement Alien Dictionary LeetCode Solution – Existuje nový cizí jazyk, který používá anglickou abecedu. Pořadí mezi písmeny vám však není známo. Dostanete seznam řetězcových slov ze slovníku cizího jazyka, kde jsou řetězce ve slovech seřazeny lexikograficky podle pravidel tohoto nového jazyka. ...

Dozvědět se více

Otázka 118. Průnik dvou propojených seznamů Řešení LeetCode Problémové prohlášení Průnik dvou propojených seznamů Řešení LeetCode – Jsou nám dány hlavy dvou silně propojených seznamů headA a headB. Je také dáno, že dva propojené seznamy se mohou v určitém bodě protínat. Jsme požádáni, abychom vrátili uzel, ve kterém se protínají nebo mají hodnotu null, pokud ...

Dozvědět se více

Otázka 119. Permutační sekvence Řešení LeetCode Sekvence permutací problému LeetCode Řešení – Množina [1, 2, 3, ..., n] obsahuje celkem n! jedinečné permutace. Vypsáním a označením všech permutací v daném pořadí získáme následující sekvenci pro n = 3: "123" "132" "213" "231" "312" "321" Vzhledem k n a k vrátíme k-tou permutační sekvenci. Příklad testovacího případu 1: Vstup: n ...

Dozvědět se více

Otázka 120. Otočit obrázek Řešení LeetCode Prohlášení o problému Otočit obrázek LeetCode Řešení – Dostanete nxn 2D matici představující obrázek, otočte obrázek o 90 stupňů (ve směru hodinových ručiček). Musíte otočit obrázek na místě, což znamená, že musíte upravit vstupní 2D matici přímo. NEAlokujte další 2D matici a proveďte rotaci. Příklad testovacího případu 1: Vstup: ...

Dozvědět se více

Otázka 121. Nahoru K Častá slova Řešení LeetCode Problémové prohlášení Nahoru K Častá slova Řešení LeetCode – Vzhledem k poli řetězců slov a celému číslu k vraťte k nejčastějších řetězců. Vraťte odpověď seřazenou podle frekvence od nejvyšší po nejnižší. Seřaďte slova se stejnou frekvencí podle jejich lexikografického pořadí. Příklad testovacího případu 1: Vstup: slova = [“i”,”love”,”leetcode”,”i”,”love”,”coding”] k = 2 Výstup: [“i”,”love”] Vysvětlení . ..

Dozvědět se více

Otázka 122. Sloučit Sorted Array řešení LeetCode Prohlášení o problému Merge Sorted Array LeetCode Řešení – Jsou vám dána dvě celočíselná pole nums1 a nums2, seřazená v neklesajícím pořadí, a dvě celá čísla ma n, představující počet prvků v nums1 a nums2. Sloučit nums1 a nums2 do jednoho pole seřazeného v neklesajícím pořadí. Finální seřazené pole by funkce neměla vracet, ale místo toho by mělo být uloženo v poli nums1. ...

Dozvědět se více

Otázka 123. Volný čas zaměstnanců LeetCode řešení Problémový stav Zaměstnanec Volný čas Řešení LeetCode – Dostáváme seznam zaměstnanců, který představuje pracovní dobu každého zaměstnance. Každý zaměstnanec má seznam nepřekrývajících se intervalů a tyto intervaly jsou seřazeny. Vraťte seznam konečných intervalů představujících společný volný čas s kladnou délkou pro všechny zaměstnance, také v ...

Dozvědět se více

Otázka 124. Počet Distinct Islands Leetcode řešení Problémové prohlášení Počet odlišných ostrovů Řešení LeetCode – „Počet odlišných ostrovů“ uvádí, že daná binární matice anxm. Ostrov je skupina 1 (představující pevninu) spojených 4 směry (horizontálně nebo vertikálně). Ostrov je považován za stejný jako jiný právě tehdy, když jeden ostrov...

Dozvědět se více

Otázka 125. Obnovení IP adres Řešení Leetcode Prohlášení o problému Řešení LeetCode Restore IP Addresses – „Restore IP Addresses“ uvádí, že vzhledem k řetězci, který obsahuje pouze číslice, musíme vrátit všechny možné platné IP adresy v libovolném pořadí, které lze vytvořit vložením teček do řetězce. Všimněte si, že se nesmíme vrátit...

Dozvědět se více

Otázka 126. Řešení komprese řetězců LeetCode Prohlášení o problému Komprese řetězce Řešení LeetCode – Zadané pole znaků charaktujte jej pomocí následujícího algoritmu: Začněte s prázdným řetězcem s. Pro každou skupinu po sobě jdoucích opakujících se znaků ve znacích: Pokud je délka skupiny 1, připojte znak ke znaku s. V opačném případě připojte znak následovaný délkou skupiny. Stlačený řetězec...

Dozvědět se více

Otázka 127. Možné řešení Bipartition LeetCode Problémové prohlášení Možné Bipartition LeetCode řešení – Chceme rozdělit skupinu n lidí (označených od 1 do n) do dvou skupin libovolné velikosti. Každý člověk nemusí mít rád některé jiné lidi a neměli by chodit do stejné skupiny. Vzhledem k celému číslu n a poli nelíbí se, kde se nelíbí[i] = [ai, bi] znamená, že osoba označená ai dělá ...

Dozvědět se více

Otázka 128. Maximální součin rozděleného binárního stromu řešení LeetCode Problémové prohlášení Maximální součin rozděleného binárního stromu Řešení LeetCode – Vzhledem ke kořenu binárního stromu rozdělte binární strom na dva podstromy odstraněním jedné hrany tak, aby byl součin součtů podstromů maximalizován. Vrátí maximální součin součtů dvou podstromů. ...

Dozvědět se více

Otázka 129. Maximální součin tří čísel Řešení LeetCode Problémové prohlášení Maximální součin tří čísel Řešení LeetCode – Dostali jsme pole, otázka nás žádá, abychom vypočítali maximální součin libovolných 3 čísel. Příklady Příklad 1: Vstup: nums = [1,2,3] Výstup: 6 Příklad 2: Vstup: nums = [1,2,3,4] Výstup: 24 Příklad 3: Vstup: nums = ...

Dozvědět se více

Otázka 130. Řešení LeetCode s náhodným výběrem indexu Problem Statement Random Pick Index LeetCode Solution- Máme k dispozici konstruktor třídy „Solution“ a funkci „pick“ typu int. Jsme povinni implementovat třídu „Solution“, protože Solution(int[] nums) Inicializuje objekt pomocí pole nums. int pick(int target) Vybere náhodný index i z nums, kde nums[i] == cíl. Pokud existuje více...

Dozvědět se více

Otázka 131. Další řešení LeetCode Greater Element III Prohlášení o problému Problém, Next Greater Element III LeetCode Solution uvádí, že máte kladné celé číslo n a musíte najít další největší celé číslo pouze pomocí číslic přítomných v n. Pokud žádné takové celé číslo neexistuje, musíte vytisknout -1. Navíc nový...

Dozvědět se více

Otázka 132. Binární strom Nejdelší po sobě jdoucí sekvence Řešení LeetCode Prohlášení problému Binární strom nejdelší po sobě jdoucí sekvence Řešení LeetCode – Vzhledem ke kořeni binárního stromu vraťte délku nejdelší cesty po sobě jdoucí sekvence. Cesta odkazuje na libovolnou posloupnost uzlů od některého počátečního uzlu k libovolnému uzlu ve stromu spolu s připojeními rodič-dítě. Nejdelší po sobě jdoucí...

Dozvědět se více

Otázka 133. Řešení Move Zeroes LeetCode Prohlášení problému Problém, Move Zeroes LeetCode Solution uvádí, že je vám přiděleno pole obsahující nulové a nenulové prvky a musíte přesunout všechny nuly na konec pole, přičemž je třeba zachovat relativní pořadí nenulových prvků v poli. . Musíte také implementovat na místě...

Dozvědět se více

Otázka 134. 01 Řešení Matrix LeetCode Zadání problému V tomto problému 01 Matrix LeetCode Solution potřebujeme najít vzdálenost nejbližší 0 pro každou buňku dané matice. Matice se skládá pouze z 0 a 1 a vzdálenost libovolných dvou sousedních buněk je 1. Příklady Příklad 1: Vstup: mat = ...

Dozvědět se více

Otázka 135. Řešení LeetCode Factorial Trailing Zeroes Problémové prohlášení Faktorové koncové nuly Řešení LeetCode – Vzhledem k celému číslu n vrátí počet koncových nul v n!. Všimněte si, že n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1. Vstup: n = 3 Výstup: 0 Vysvětlení: 3! = 6, bez koncovky...

Dozvědět se více

Otázka 136. Řešení Word Ladder LeetCode Prohlášení o problému The Word Ladder LeetCode Solution – „Word Ladder“ uvádí, že dostanete řetězec beginWord, řetězec endWord a wordList. Potřebujeme najít nejkratší délku transformační sekvence (pokud neexistuje žádná cesta, vytiskněte 0) od beginWord do endWord za daných podmínek: Všechna mezilehlá slova by měla ...

Dozvědět se více

Otázka 137. Nejdelší podřetězec s nejméně K opakujícími se znaky Řešení LeetCode Prohlášení problému Problém Nejdelší podřetězec s nejméně K opakujícími se znaky Řešení LeetCode říká, že daný řetězec S a celé číslo k vrátí délku nejdelšího podřetězce S tak, že frekvence každého znaku v tomto podřetězci je větší nebo rovna k . Příklad pro nejdelší podřetězec s alespoň ...

Dozvědět se více

Otázka 138. Last Stone Weight II řešení LeetCode Problémové prohlášení Problém Poslední váha kamene II říká, že dostanete pole celých kamenů, kde kameny[i] je hmotnost i-tého kamene. Hrajeme hru s kameny. V každém tahu si vybereme dva libovolné kameny a rozbijeme je dohromady. Předpokládejme, že kameny mají hmotnosti x a y ...

Dozvědět se více

Otázka 139. Největší řešení BST Subtree LeetCode Prohlášení problému Největší podstrom BST LeetCode Řešení problému říká, že daný kořen binárního stromu nalezne největší podstrom, což je také binární vyhledávací strom (BST), kde největší znamená podstrom s největším počtem uzlů. Poznámka: Podstrom musí zahrnovat všechny své potomky. V binárním...

Dozvědět se více

Otázka 140. Zasedací místnosti II Řešení LeetCode Prohlášení o problému Řešení zasedacích místností II LeetCode – „Zasedací místnosti II“ uvádí, že máte k dispozici řadu časových intervalů „intervalů“ schůzek, kde „intervaly[i] = [ začátek[i], konec[i] ]“, vraťte minimální požadovaný počet konferenčních místností. Příklad: intervaly = [[0,30],[5,10],[15,20]] 2 Vysvětlení: První schůzku lze uskutečnit ...

Dozvědět se více

Otázka 141. Subarray Suma se rovná K řešení LeetCode Prohlášení problému Řešení Subarray Sum Equals K LeetCode – „Subarray Sum Equals K“ uvádí, že vám je dáno pole celých čísel „nums“ a celé číslo „k“, které vrátí celkový počet spojitých podpolí, jejichž součet se rovná „k“. Příklad: nums = [1, 2, 3], k=3 2 Vysvětlení: There ...

Dozvědět se více

Otázka 142. Nejdelší palindromický podřetězec řešení LeetCode Problémové prohlášení Nejdelší palindromický podřetězec Řešení LeetCode – „Nejdelší palindromický podřetězec“ uvádí, že je vám dán řetězec s, vraťte nejdelší palindromický podřetězec v s. Poznámka: Palindrom je slovo, které se čte stejně dozadu jako dopředu, např. madam. Příklad: s = "babad" "bab" Vysvětlení: Vše ...

Dozvědět se více

Otázka 143. Nejlepší čas na nákup a prodej skladového řešení LeetCode Prohlášení o problému Nejlepší čas na nákup a prodej akcií Řešení LeetCode – „Nejlepší čas na nákup a prodej akcií“ uvádí, že máte k dispozici řadu cen, kde ceny[i] jsou cenou dané akcie v itý den. Chcete maximalizovat svůj zisk výběrem...

Dozvědět se více

Otázka 144. Řešení LRU Cache LeetCode Otázka Navrhněte datovou strukturu, která se řídí omezeními mezipaměti nejméně nedávno použitých (LRU). Implementujte třídu LRUCache: LRUCache(int capacity) Inicializuje mezipaměť LRU s kladnou kapacitou. int get (klíč int) Vrátí hodnotu klíče, pokud klíč existuje, jinak vrátí hodnotu -1. void put (klíč int, hodnota int) Aktualizujte hodnotu klíče, pokud klíč existuje. V opačném případě přidejte pár klíč–hodnota do...

Dozvědět se více

Otázka 145. Řešení permutací Leetcode Problém Řešení permutací Leetcode poskytuje jednoduchou sekvenci celých čísel a žádá nás, abychom vrátili kompletní vektor nebo pole všech permutací dané sekvence. Než se tedy pustíme do řešení problému. Měli bychom být obeznámeni s permutacemi. Permutace tedy není nic jiného než uspořádání ...

Dozvědět se více

Otázka 146. Řešení se dvěma součty Leetcode V tomto problému musíme najít pár dvou odlišných indexů v seřazeném poli, které jejich hodnoty přidávají k danému cíli. Můžeme předpokládat, že pole má pouze jednu dvojici celých čísel, která se sčítají k cílovému součtu. Všimněte si, že pole je ...

Dozvědět se více

Otázka 147. Řešení leetcode lexikografických čísel Prohlášení o problému V úloze „Lexikografická čísla“ je nám dáno číslo n. Naším úkolem je tisknout čísla od 1 do n v lexikografickém pořadí. Příklad n = 13 [1 10 11 12 13 2 3 4 5 6 7 8 9] Vysvětlení: Protože musíme tisknout čísla mezi ...

Dozvědět se více

Otázka 148. Maximální počet segmentů o délkách a, b a c Problém „Maximální počet segmentů délek a, bac“ uvádí, že máte kladné celé číslo N, a musíte najít maximální počet segmentů délek a, bac, který lze vytvořit pomocí N. Příklad N = 7 a = 5, b ...

Dozvědět se více

Otázka 149. Prostorově optimalizované řešení DP pro problém s batohem 0-1 Prohlášení o problému Dostaneme batoh, který může mít určitou váhu, musíme vybrat některé položky z daných položek s určitou hodnotou. Předměty by měly být vybírány tak, aby byla maximalizována hodnota batohu (celková hodnota vyzvednutých předmětů). ...

Dozvědět se více

Otázka 150. K-tý výrazný prvek v poli Dostanete celé číslo A, v poli vytisknete k-tý odlišný prvek. Dané pole může obsahovat duplikáty a výstup by měl vytisknout k-tý odlišný prvek mezi všemi jedinečnými prvky v poli. Pokud k je více než několik odlišných prvků, uveďte to. Příklad vstupu: ...

Dozvědět se více

Otázka 151. Křižovatka dvou polí V průsečíku problému dvou polí jsme zadali dvě pole, musíme vytisknout jejich průnik (společné prvky). Příklad Vstup arr1 [] = {1, 2, 2, 1} arr2 [] = {2, 2} Výstup {2, 2} Vstup arr1 = {4, 9, 5} arr2 = {9, 4, 9, 8 , 4} Výstup {4, 9} Algoritmus ...

Dozvědět se více

Otázka 152. Leetcode permutace V této premutaci problému s leetcode jsme dali řadu odlišných celých čísel, vytiskněte všechny jeho možné permutace. Příklady Vstupní vstup [] = {1, 2, 3} Výstup 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 Vstupní vstup [] = {1, 2, ...

Dozvědět se více

Otázka 153. Sloučit K seřazené propojené seznamy Sloučit K seřazené propojené seznamy problém je tak slavný z hlediska rozhovoru. Tato otázka se tolikrát ptá ve velkých společnostech, jako je Google, Microsoft, Amazon atd. Jak název napovídá, dostali jsme k seřazené propojené seznamy. Musíme je spojit dohromady do ...

Dozvědět se více

Otázka 154. Najděte medián z datového proudu V části Najít medián z problému datového proudu jsme uvedli, že se celá čísla načítají z datového proudu. Najděte medián všech dosud přečtených prvků od prvního celého čísla do posledního celého čísla. Příklad vstupu 1: stream [] = {3,10,5,20,7,6} Výstup: 3 6.5 ...

Dozvědět se více

Otázka 155. Maximum posuvného okna V maximálním problému s posuvným oknem jsme zadali čísla polí, pro každé souvislé okno o velikosti k najděte maximální prvek v okně. Příklad Vstupní čísla [] = {1,3, -1, -3,5,3,6,7} k = 3 Výstup {3,3,5,5,6,7} Vysvětlení Naivní přístup pro posuvné okno Maximum pro každé souvislé okno o velikosti k, procházet ...

Dozvědět se více

Otázka 156. Přestávka na slovo Word Break je problém, který krásně ilustruje zcela nový koncept. Všichni jsme slyšeli o složených slovech. Slova složená z více než dvou slov. Dnes máme seznam slov a vše, co musíme udělat, je zkontrolovat, zda všechna slova ze slovníku mohou ...

Dozvědět se více

Otázka 157. Reverzní uzly ve skupině K. Problém V obrácených uzlech v problému skupiny K jsme zadali propojený seznam, obrátit propojený seznam ve skupině k a vrátit upravený seznam. Pokud uzly nejsou násobkem k, pak zbývající uzly obráťte. Hodnota k je vždy menší nebo rovna ...

Dozvědět se více

Otázka 158. Implementace mezipaměti LRU Nejméně nedávno použitá mezipaměť (LRU) je typ metody, která se používá k udržování dat tak, aby byl čas potřebný k použití dat minimální. Algoritmus LRU použitý, když je mezipaměť plná. Odebereme nejméně nedávno použitá data z mezipaměti paměti ...

Dozvědět se více

Otázka 159. N královna problém Problém s královnou pomocí konceptu Backtracking. Zde umístíme královnu tak, aby žádná královna nebyla napadena. Stav útoku královen je, pokud jsou dvě královny ve stejném sloupci, řádku a úhlopříčce, pak jsou pod útokem. Uvidíme to na následujícím obrázku. Tady ...

Dozvědět se více

Translate »