Kategorie pytań
Pytania dotyczące tablicy Cytadeli
Pytanie 1. Rozwiązanie pułapkowania wody deszczowej Leetcode Opis problemu Rozwiązanie „Trapping Rain Water” LeetCode – „Trapping Rain Water” stwierdza, że mając tablicę wysokości, która reprezentuje mapę wysokości, gdzie szerokość każdego słupka wynosi 1. Musimy znaleźć ilość wody uwięzionej po deszczu. Przykład: Wejście: wysokość = [0,1,0,2,1,0,1,3,2,1,2,1] Wyjście: 6 Wyjaśnienie: Sprawdź ...
Pytanie 2. Coin Change 2 Rozwiązanie Leetcode Opis problemu Rozwiązanie LeetCode Coin Change 2 – „Coin Change 2” oznacza, że podano tablicę różnych liczb całkowitych monet i liczbę całkowitą, reprezentującą całkowitą kwotę pieniędzy. Musimy zwrócić liczbę całkowitej liczby różnych możliwych kombinacji, które sumują się do kwoty. ...
Pytanie 3. Liczba par indeksów z równymi elementami w tablicy Załóżmy, że podaliśmy tablicę liczb całkowitych. Zadanie „Liczba par indeksów o równych elementach w tablicy” wymaga znalezienia liczby par indeksów (i, j) w taki sposób, że arr [i] = arr [j] i i nie jest równe j . Przykład arr [] = {2,3,1,2,3,1,4} 3 pary objaśnień ...
Pytanie 4. Najdłuższa podtablica nie mająca więcej niż K odrębnych elementów Problem „Najdłuższa podtablica nie mająca więcej niż K odrębnych elementów” stwierdza, że zakładając, że masz tablicę liczb całkowitych, instrukcja problemu prosi o znalezienie najdłuższej podtablicy, która ma nie więcej niż k różnych elementów. Przykład arr [] = {4, 3, 5, 2, 1, 2, 0, 4, 5} ...
Pytanie 5. Minimalna operacja, aby wszystkie elementy były równe w tablicy Problem „Minimalna operacja, aby wszystkie elementy były równe w tablicy” mówi, że otrzymujesz tablicę z pewnymi liczbami całkowitymi. Musisz znaleźć minimalne operacje, które można wykonać, aby tablica była równa. Przykład [1,3,2,4,1] 3 Wyjaśnienie Albo 3 odejmowania mogą być ...
Pytanie 6. Różnica między najwyższymi i najmniejszymi częstotliwościami w tablicy Problem „Różnica między najwyższymi i najmniejszymi częstotliwościami w tablicy” zakłada, że masz tablicę liczb całkowitych. Zadanie zawiera prośbę o ustalenie maksymalnej różnicy między najwyższą częstotliwością a najniższą częstotliwością dwóch różnych liczb w tablicy. Przykład arr [] = {1, 2, 3, ...
Pytanie 7. k-ty brakujący element w rosnącej sekwencji, który nie występuje w danej sekwencji Problem „k-ten brakujący element w kolejności rosnącej, którego nie ma w danej sekwencji” mówi, że otrzymujesz dwie tablice. Jedna z nich jest ułożona w porządku rosnącym, a druga normalna tablica nieposortowana o numerze k. Znajdź k-ty brakujący element, którego nie ma w normalnym ...
Pytanie 8. Sprawdź, czy dana tablica zawiera zduplikowane elementy w odległości k od siebie Problem „Sprawdź, czy dana tablica zawiera zduplikowane elementy w odległości k od siebie” mówi, że musimy sprawdzić, czy w danej tablicy nieuporządkowanej w zakresie k nie ma duplikatów. Tutaj wartość k jest mniejsza niż podana tablica. Przykłady K = 3 arr [] = ...
Pytanie 9. Znajdź wszystkie pary (a, b) w tablicy takiej, że a% b = k Stwierdzenie problemu Problem „Znajdź wszystkie pary (a, b) w tablicy, w której a% b = k” stwierdza, że otrzymujesz tablicę liczb całkowitych i wartość całkowitą o nazwie k. Opis problemu prosi o znalezienie pary w taki sposób, że x ...
Pytanie 10. Zapytania dotyczące XOR największego nieparzystego dzielnika zakresu Stwierdzenie problemu Problem „Zapytania na XOR największego nieparzystego dzielnika zakresu” stwierdza, że otrzymujesz tablicę liczb całkowitych i zapytanie q, każde zapytanie składa się z zakresu. Opis problemu prosi o znalezienie XOR największego nieparzystego dzielnika w podanym zakresie ...
Pytanie 11. Trójkierunkowe partycjonowanie tablicy wokół podanego zakresu Stwierdzenie problemu Otrzymujesz tablicę liczb całkowitych oraz zakres lowValue i highValue. Problem „Trójstronne partycjonowanie tablicy wokół określonego zakresu” wymaga podzielenia tablicy w taki sposób, aby tablica została podzielona na trzy części. Podziałami tablic będą: Elementy ...
Pytanie 12. Zastąp dwie kolejne równe wartości jedną większą Instrukcja problemu Załóżmy, że masz tablicę liczb całkowitych. Problem „Zamień dwie kolejne równe wartości na jedną większą” polega na zastąpieniu wszystkich tych par wartości, które mówią „a”, które pojawia się kolejno liczbą „a + 1” 1 większą od nich (dwie kolejne liczby), tak że nawet po modyfikacji lub powtórzenie tam ...
Pytanie 13. Znajdź posortowany podciąg o rozmiarze 3 w czasie liniowym Stwierdzenie problemu Problem „Znajdź posortowany podciąg o rozmiarze 3 w czasie liniowym” stwierdza, że masz tablicę liczb całkowitych. Instrukcja problemu prosi o znalezienie trzech liczb w taki sposób, że tablica [i] <tablica [k] <tablica [k] i i <j <k. Przykład arr [] ...
Pytanie 14. Zmień kolejność w tablicy - najmniejsza, największa, druga najmniejsza, druga co do wielkości Instrukcja problemu Załóżmy, że masz tablicę liczb całkowitych. Problem „Zmień kolejność tablicy w kolejności - najmniejsza, największa, druga najmniejsza, druga co do wielkości…” polega na zmianie kolejności tablicy w taki sposób, aby najpierw była najmniejsza liczba, potem największa, potem druga najmniejsza, a potem druga ...
Pytanie 15. Policz pary z dwóch posortowanych tablic, których suma jest równa danej wartości x Instrukcja problemu „Policz pary z dwóch posortowanych tablic, których suma jest równa podanej wartości x” problem stwierdza, że otrzymujesz dwie posortowane tablice liczb całkowitych i wartość całkowitą zwaną sumą. Opis problemu prosi o ustalenie całkowitej liczby par, która sumuje się do ...
Pytanie 16. Drukowanie nawiasów w problemie mnożenia łańcucha macierzy Stwierdzenie problemu Musimy znaleźć taką kolejność mnożenia macierzy, aby liczba operacji związanych z mnożeniem wszystkich macierzy była zminimalizowana. Następnie musimy wydrukować to zlecenie, czyli wydrukować nawiasy w problemie mnożenia łańcucha macierzy. Rozważ, że masz 3 macierze A, B, ...
Pytanie 17. Wstaw Usuń GetRandom W problemie Insert Delete GetRandom musimy zaprojektować strukturę danych, która obsługuje wszystkie kolejne operacje w średnim czasie O (1). insert (val): Wstawia wartość pozycji do zestawu, jeśli jeszcze nie istnieje. remove (val): Usuwa wartość pozycji z zestawu, jeśli jest obecna. getRandom: Zwraca losowy element z bieżącego zestawu ...
Pytanie 18. Zwiększenie kolejności długości o trzy z maksymalnym produktem Stwierdzenie problemu W zadaniu „Zwiększanie kolejności długości trzech z maksymalnym iloczynem” podaliśmy tablicę dodatnich liczb całkowitych. Znajdź podciąg o długości 3 z maksymalnym produktem. Kolejność powinna rosnąć. Format wejściowy Pierwszy i jedyny wiersz zawierający liczbę całkowitą N oznaczającą rozmiar ...
Pytanie 19. Znajdź maksymalną powtarzającą się liczbę w tablicy Stwierdzenie problemu W zadaniu „Znajdź maksymalną powtarzającą się liczbę w tablicy” podaliśmy nieposortowaną tablicę o rozmiarze N. Podana tablica zawiera liczby z zakresu {0, k} gdzie k <= N. Znajdź liczbę, która zbliża się do maksymalnej liczby razy w tablicy. Format wejściowy ...
Pytanie 20. Liczba trojaczków z sumą mniejszą niż podana wartość Instrukcja problemu Podaliśmy tablicę zawierającą N elementów. W podanej tablicy Policz liczbę trójek z sumą mniejszą niż podana wartość. Przykład Wejście a [] = {1, 2, 3, 4, 5, 6, 7, 8} Suma = 10 Wyjście 7 Możliwe tróje to: ...
Pytanie 21. Znajdź trójkę w tablicy z podaną sumą Instrukcja problemu Mając tablicę liczb całkowitych, znajdź kombinację trzech elementów w tablicy, których suma jest równa danej wartości X. Tutaj wypiszemy pierwszą otrzymaną kombinację. Jeśli nie ma takiej kombinacji, wypisz -1. Przykładowe wejście N = 5, X = 15 arr [] = ...
Pytanie 22. Pierwszy powtarzający się element Instrukcja problemu Podaliśmy tablicę zawierającą n liczb całkowitych. Musimy znaleźć pierwszy powtarzający się element w podanej tablicy. Jeśli nie ma powtarzającego się elementu, wypisz „Nie znaleziono powtarzającej się liczby całkowitej”. Uwaga: elementy powtarzające się to elementy, które pojawiają się więcej niż raz. (Tablica może zawierać duplikaty) ...
Pytanie 23. Układanka z tablicą produktów Stwierdzenie problemu W przypadku zagadki z tablicą produktową musimy skonstruować tablicę, w której i-ty element będzie iloczynem wszystkich elementów w danej tablicy z wyjątkiem elementu na i-tej pozycji. Przykład Wejście 5 10 3 5 6 2 Wyjście 180 ...
Pytanie 24. Znajdź pierwszą powtarzającą się liczbę w podanej tablicy Stwierdzenie problemu Tablica może zawierać wiele powtarzających się liczb, ale musisz znaleźć pierwszą powtarzającą się liczbę w danej tablicy (występującą po raz drugi). Przykład Wejście 12 5 4 2 8 9 7 12 5 6 12 4 7 Wyjście 5 jest pierwszym powtarzającym się elementem ...
Pytania dotyczące łańcucha cytadeli
Pytanie 25. Sprawdź, czy wszystkie rzędy macierzy są względem siebie obrotami kołowymi Stwierdzenie problemu W zadaniu „Sprawdź, czy wszystkie wiersze macierzy są nawzajem obrotami kołowymi”, podaliśmy macierz znakową, napisz program, który sprawdzi, czy wszystkie wiersze są względem siebie obrotami kołowymi, czy nie. Jeśli wszystkie wiersze są ze sobą okrężne, wydrukuj ...
Pytanie 26. Długość najdłuższego prawidłowego podłańcucha Stwierdzenie problemu W polu „Długość najdłuższego prawidłowego podłańcucha” podaliśmy ciąg zawierający tylko nawiasy otwierające i zamykające. Napisz program, który znajdzie najdłuższy prawidłowy podciąg nawiasów. Format wejściowy Pierwsza i jedyna linia zawierająca ciąg znaków. Format wyjściowy Pierwszy i ...
Pytania dotyczące drzewa cytadeli
Pytanie 27. Skonstruuj drzewo binarne z podanych przejść w kolejności i przed zamówieniem W tym problemie mamy uporządkowanie i preorder drzewa binarnego. Musimy skonstruować drzewo binarne z podanych przejść Inorder i Preorder. Przykładowe dane wejściowe: Inorder = [D, B, E, A, F, C] Preorder = [A, B, D, E, C, F] Dane wyjściowe: Wstępne zamówienie przejścia drzewa utworzonego przez ...
Pytanie 28. Sprawdź poprawność drzewa wyszukiwania binarnego Problem W przypadku problemu z walidacją drzewa wyszukiwania binarnego, podaliśmy korzeń drzewa, musimy sprawdzić, czy jest to drzewo wyszukiwania binarnego, czy nie. Przykład: Wynik: true Wyjaśnienie: Podane drzewo jest drzewem wyszukiwania binarnego, ponieważ wszystkie elementy pozostawione w każdym poddrzewie ...
Pytania dotyczące stosu Cytadeli
Pytanie 29. Rozwiązanie pułapkowania wody deszczowej Leetcode Opis problemu Rozwiązanie „Trapping Rain Water” LeetCode – „Trapping Rain Water” stwierdza, że mając tablicę wysokości, która reprezentuje mapę wysokości, gdzie szerokość każdego słupka wynosi 1. Musimy znaleźć ilość wody uwięzionej po deszczu. Przykład: Wejście: wysokość = [0,1,0,2,1,0,1,3,2,1,2,1] Wyjście: 6 Wyjaśnienie: Sprawdź ...
Pytania dotyczące kolejki do cytadeli
Pytanie 30. Kolejka priorytetowa korzystająca z podwójnie połączonej listy Opis problemu Problem „Kolejka priorytetowa korzystająca z podwójnie połączonej listy” wymaga zaimplementowania następujących funkcji kolejki priorytetowej przy użyciu podwójnie połączonej listy. push (x, p): Umieść element x z priorytetem p w kolejce priorytetowej na odpowiedniej pozycji. pop (): Usuń i zwróć element o najwyższym priorytecie ...
Pytania dotyczące macierzy cytadeli
Pytanie 31. Drukowanie nawiasów w problemie mnożenia łańcucha macierzy Stwierdzenie problemu Musimy znaleźć taką kolejność mnożenia macierzy, aby liczba operacji związanych z mnożeniem wszystkich macierzy była zminimalizowana. Następnie musimy wydrukować to zlecenie, czyli wydrukować nawiasy w problemie mnożenia łańcucha macierzy. Rozważ, że masz 3 macierze A, B, ...
Pytanie 32. Sprawdź, czy wszystkie rzędy macierzy są względem siebie obrotami kołowymi Stwierdzenie problemu W zadaniu „Sprawdź, czy wszystkie wiersze macierzy są nawzajem obrotami kołowymi”, podaliśmy macierz znakową, napisz program, który sprawdzi, czy wszystkie wiersze są względem siebie obrotami kołowymi, czy nie. Jeśli wszystkie wiersze są ze sobą okrężne, wydrukuj ...
Cytadela Inne pytania
Pytanie 33. Oceń rozwiązanie LeetCode z odwróconą polską notacją Opis problemu Oceń odwrotną notację polską Rozwiązanie LeetCode – Oceń wartość wyrażenia arytmetycznego w odwrotnej notacji polskiej. Prawidłowe operatory to +, -, * i /. Każdy operand może być liczbą całkowitą lub innym wyrażeniem. Zauważ, że dzielenie między dwiema liczbami całkowitymi powinno skrócić się do zera. Gwarantuje się, że podane ...
Pytanie 34. Sklep oparty na wartościach czasowych Rozwiązanie LeetCode Opis problemu Przechowywanie wartości klucza i wartości opartej na czasie Rozwiązanie LeetCode — zaprojektuj strukturę danych opartą na czasie, która może przechowywać wiele wartości dla tego samego klucza z różnymi znacznikami czasu i pobierać wartość klucza z określonym znacznikiem czasu. Zaimplementuj klasę TimeMap: TimeMap() Inicjuje obiekt struktury danych. void set(String key, String...
Pytanie 35. Znajdź medianę ze strumienia danych Rozwiązanie LeetCode Opis problemu Znajdź medianę ze strumienia danych Rozwiązanie LeetCode — Mediana jest średnią wartością uporządkowanej listy liczb całkowitych. Jeśli rozmiar listy jest parzysty, nie ma średniej wartości, a mediana jest średnią z dwóch średnich wartości. Na przykład dla arr = [2,3,4] mediana ...
Pytanie 36. Rozwiązanie LeetCode dotyczące zderzenia asteroid Opis problemu Asteroid Collision LeetCode Rozwiązanie – Otrzymaliśmy tablicę asteroid z liczbami całkowitymi reprezentującymi asteroidy w rzędzie. Dla każdej asteroidy wartość bezwzględna reprezentuje jej rozmiar, a znak wskazuje jej kierunek (pozytywne znaczenie w prawo, negatywne znaczenie w lewo). Każda asteroida porusza się z tą samą prędkością. Dowiedz się o stanie ...
Pytanie 37. Serializuj i deserializuj drzewo binarne Rozwiązanie LeetCode Opis problemu Serializuj i deserializuj drzewo binarne Rozwiązanie LeetCode — Serializacja to proces przekształcania struktury danych lub obiektu w sekwencję bitów, dzięki czemu można je przechowywać w pliku lub buforze pamięci lub przesłać przez łącze sieciowe w celu późniejszej rekonstrukcji w ...
Pytanie 38. Produkt Array z wyjątkiem rozwiązania Self LeetCode Opis problemu Iloczyn tablicy z wyjątkiem Self LeetCode Rozwiązanie – Mając tablicę liczb całkowitych nums, zwróć odpowiedź tablicową taką, że odpowiedź[i] jest równa iloczynowi wszystkich elementów nums z wyjątkiem nums[i]. Iloczyn dowolnego prefiksu lub sufiksu liczb gwarantuje, że zmieści się w 32-bitowej liczbie całkowitej. Musisz napisać algorytm, który działa w czasie O(n) i bez użycia dzielenia...
Pytanie 39. Kth najmniejszy element w rozwiązaniu BST Leetcode Opis problemu K-ty najmniejszy element w rozwiązaniu BST Leetcode – Biorąc pod uwagę korzeń binarnego drzewa wyszukiwania i liczbę całkowitą k, zwróć k-tą najmniejszą wartość (1-indeksowaną) ze wszystkich wartości węzłów w drzewie. Przykłady: Dane wejściowe: root = [3,1,4,null,2], k = 1 Dane wyjściowe: 1 Dane wejściowe: root = [5,3,6,2,4,null,null,1], k ...
Pytanie 40. Brzydki numer II Rozwiązanie LeetCode Opis problemu Brzydka liczba II LeetCode Rozwiązanie – Brzydka liczba to dodatnia liczba całkowita, której czynniki pierwsze są ograniczone do 2, 3 i 5. Biorąc pod uwagę liczbę całkowitą n, zwróć n-tą brzydką liczbę. Wejście: n = 10 Wyjście: 12 Wyjaśnienie: [1, 2, 3, 4, 5, 6, 8, 9, 10, 12] to sekwencja pierwszych 10 ...
Pytanie 41. Rozwiązanie LeetCode z podziałem liczb całkowitych Opis problemu Integer Break LeetCode Rozwiązanie – Mając liczbę całkowitą n, podziel ją na sumę k dodatnich liczb całkowitych, gdzie k >= 2, i zmaksymalizuj iloczyn tych liczb całkowitych. Musimy zwrócić maksymalną ilość produktu, jaką możemy otrzymać. Wejście: n = 2 Wyjście: 1 Wyjaśnienie: 2 = 1 + 1, ...
Pytanie 42. Maksymalny produkt z trzech liczb Rozwiązanie LeetCode Opis problemu Maksymalny iloczyn trzech liczb Rozwiązanie LeetCode – Otrzymaliśmy tablicę, pytanie prosi nas o obliczenie maksymalnego iloczynu dowolnych 3 liczb. Przykłady Przykład 1: Wejście: nums = [1,2,3] Wyjście: 6 Przykład 2: Wejście: nums = [1,2,3,4] Wyjście: 24 Przykład 3: Wejście: nums = ...
Pytanie 43. Słowo Ladder Rozwiązanie LeetCode Opis problemu The Word Ladder Rozwiązanie LeetCode – „Word Ladder” oznacza, że otrzymujesz ciąg beginWord, ciąg endWord i wordList. Musimy znaleźć najkrótszą długość sekwencji transformacji (jeśli nie ma ścieżki, wypisz 0) od beginWord do endWord po spełnieniu podanych warunków: Wszystkie słowa pośrednie powinny ...
Pytanie 44. Najlepszy czas na kupowanie i sprzedawanie rozwiązań LeetCode Opis problemu Najlepszy czas na zakup i sprzedaż akcji Rozwiązanie LeetCode – „Najlepszy czas na zakup i sprzedaż akcji” oznacza, że otrzymujesz tablicę cen, gdzie ceny[i] są ceną danych akcji w i-tym dniu. Chcesz zmaksymalizować zysk wybierając...
Pytanie 45. Wydrukuj n warunków sekwencji Newmana-Conwaya Stwierdzenie problemu Problem „Wydrukuj n terminów sekwencji Newmana-Conwaya” stwierdza, że otrzymujesz liczbę całkowitą „n”. Znajdź pierwszych n terminów sekwencji Newmana-Conwaya, a następnie wydrukuj je. Przykład n = 6 1 1 2 2 3 4 Wyjaśnienie Wszystkie terminy, które są drukowane zgodnie z sekwencją Newmana-Conwaya ...
Pytanie 46. Przesuwne okno maksymalne W zadaniu Sliding Window Maximum podaliśmy liczbę tablic, dla każdego sąsiedniego okna o rozmiarze k znajdź maksymalny element w oknie. Przykład Wejściowe liczby [] = {1,3, -1, -3,5,3,6,7} k = 3 Dane wyjściowe {3,3,5,5,6,7} Objaśnienie Naiwne podejście do przesuwanego okna Maksimum dla każde sąsiednie okno o rozmiarze k, trawers ...
Pytanie 47. Implementacja pamięci podręcznej LRU Najmniejsza ostatnio używana (LRU) pamięć podręczna to rodzaj metody używanej do przechowywania danych w taki sposób, aby czas potrzebny na ich wykorzystanie był jak najmniejszy. Algorytm LRU używany, gdy pamięć podręczna jest pełna. Usuwamy najmniej ostatnio używane dane z pamięci podręcznej ...
Pytanie 48. Serializacja i deserializacja drzewa binarnego Podaliśmy drzewo binarne zawierające liczbę N węzłów, w których każdy węzeł ma jakąś wartość. Musimy serializować i deserializować drzewo binarne. Serializacja Proces przechowywania drzewa w pliku bez naruszania jego struktury nazywa się serializacją. DeserializeSerialize and Deserialize Binary Tree Proces ...