Wolałbym jak najmniej formalnej definicji i prostej
Algorytm jest sekwencją dobrze zdefiniowanych kroków, które definiują abstrakcyjne rozwiązanie problemu. Użyj tego tagu, gdy Twój problem dotyczy projektu algorytmu.
Wolałbym jak najmniej formalnej definicji i prostej
Jaki jest najbardziej zwięzły i wydajny sposób sprawdzenia, czy tablica JavaScript zawiera wartość? To jedyny znany mi sposób: function contains(a, obj) { for (var i = 0; i < a.length; i++) { if (a[i] === obj) { return true; } } return false; } Czy istnieje lepszy i bardziej zwięzły...
Wczoraj parowałem skarpetki z czystego prania i zorientowałem się, jak to robię, nie jest bardzo wydajne. Robiłem naiwne poszukiwania - wybrałem jedną skarpetę i „iterowałem” stos, aby znaleźć jego parę. Wymaga to iteracyjnie na N / 2 * n / 4 = N 2 /8 skarpet średniej. Jako informatyk...
Niedawno natknąłem się na grę 2048 . Łączysz podobne płytki, przesuwając je w jednym z czterech kierunków, aby utworzyć „większe” płytki. Po każdym ruchu, nowa dachówka pojawia się losowo pustej pozycji o wartości albo 2albo 4. Gra kończy się, gdy wszystkie pola są wypełnione i nie ma ruchów, które...
Kiedy zaczynałem uczyć się seplenienia, natknąłem się na termin rekurencyjny . Co to dokładnie
Jednym z najciekawszych projektów, nad którymi pracowałem w ciągu ostatnich kilku lat, był projekt dotyczący przetwarzania obrazu . Celem było opracowanie systemu umożliwiającego rozpoznawanie „puszek” Coca-Coli (zauważ, że podkreślam słowo „puszki”, za chwilę zrozumiesz dlaczego). Poniżej możesz...
W .NET GetHashCodemetoda jest używana w wielu miejscach w bibliotekach klas podstawowych .NET. Prawidłowe wdrożenie jest szczególnie ważne, aby szybko znaleźć przedmioty w kolekcji lub określić równość. Czy istnieje standardowy algorytm lub najlepsza praktyka w zakresie implementacji...
Niedawno miałem ciekawe doświadczenie w rozmowie kwalifikacyjnej. Pytanie zaczęło się naprawdę łatwo: Q1 : Mamy torbę zawierającą numery 1, 2, 3, ..., 100. Każda liczba pojawia się dokładnie raz, więc jest 100 liczb. Teraz jedna liczba jest losowo wybierana z torby. Znajdź brakujący...
W tym momencie czuję się trochę gruby. Spędziłem dni próbując całkowicie owinąć głowę nad konstrukcją drzewa sufiksów, ale ponieważ nie mam matematycznego zaplecza, wiele wyjaśnień wymyka mi się, gdy zaczynają nadmiernie używać symboliki matematycznej. Najbliższe dobre wyjaśnienie, które znalazłem,...
Prawie muszę napisać program, aby sprawdzić, czy lista ma jakieś duplikaty, a jeśli tak, to usuwa je i zwraca nową listę z elementami, które nie zostały zduplikowane / usunięte. To właśnie mam, ale szczerze mówiąc nie wiem, co robić. def remove_duplicates(): t = ['a', 'b', 'c', 'd'] t2 = ['a',...
Jak obliczyć odległość między dwoma punktami określonymi przez szerokość i długość geograficzną? Dla wyjaśnienia chciałbym odległość w kilometrach; punkty wykorzystują system WGS84 i chciałbym zrozumieć względne dokładności dostępnych
Pytanie Jak znaleźć złożoność czasową algorytmu? Co zrobiłem przed opublikowaniem pytania na SO? Przejrzałem to , to i wiele innych linków Ale nie, gdzie nie mogłem znaleźć jasnego i prostego wyjaśnienia, jak obliczyć złożoność czasu. Co ja wiem ? Powiedz kod tak prosty jak ten poniżej: char...
Większość osób z dyplomem CS z pewnością wie, co stoi na Big O . Pomaga nam zmierzyć, jak dobrze skaluje się algorytm. Ale jestem ciekaw, w jaki sposób możesz obliczyć lub zbliżenie złożoności
8 bitów reprezentujących liczbę 7 wygląda następująco: 00000111 Ustawione są trzy bity. Jakie są algorytmy do określania liczby ustawionych bitów w 32-bitowej liczbie
Po prostu, czym jest optymalizacja połączeń ogonowych? Mówiąc dokładniej, jakie są małe fragmenty kodu, w których można je zastosować, a gdzie nie, z wyjaśnieniem,
Próbowałem różnych metod do wdrożenia programu, który sekwencyjnie podaje cyfry pi. Próbowałem metody szeregowej Taylora , ale okazało się, że zbiega ona bardzo powoli (kiedy po pewnym czasie porównałem swój wynik z wartościami online). W każdym razie próbuję lepszych algorytmów. Pisząc program,...
Mam komputer z 1 MB pamięci RAM i bez innych lokalnych pamięci. Muszę go użyć, aby zaakceptować 1 milion 8 cyfr po przecinku przez połączenie TCP, posortować je, a następnie wysłać posortowaną listę przez inne połączenie TCP. Lista liczb może zawierać duplikaty, których nie wolno mi odrzucić. Kod...
Biorąc pod uwagę funkcję, która generuje losową liczbę całkowitą z zakresu od 1 do 5, napisz funkcję, która generuje losową liczbę całkowitą z zakresu od 1 do 7. Jakie jest proste rozwiązanie? Jakie jest skuteczne rozwiązanie w celu zmniejszenia zużycia pamięci lub uruchomienia na wolniejszym...
Otrzymałem pytanie do tego wywiadu: Biorąc pod uwagę plik wejściowy z czterema miliardami liczb całkowitych, zapewnij algorytm do generowania liczby całkowitej, która nie jest zawarta w pliku. Załóżmy, że masz 1 GB pamięci. Kontynuuj, co byś zrobił, gdybyś miał tylko 10 MB pamięci. Moja...
Chcę utworzyć usługę skracania adresów URL, w której możesz wpisać długi adres URL w polu wejściowym, a usługa skróci adres URL do „ http://www.example.org/abcdef”. Zamiast „ abcdef” może znajdować się dowolny ciąg zawierający sześć znaków a-z, A-Z and 0-9. To daje 56 ~ 57 miliardów możliwych...