შესვლა

კურსები ›

მონაცემთა სტრუქტურები და ალგორითმები

ეფექტური კოდის საფუძველი: მასივები, ხეები, გრაფები, ძებნა, დალაგება და სირთულის შეფასება.

👑 Pro4 დონე40 მოდული200 თავიმალე

რას ისწავლი

სილაბუსი

დამწყები10 მოდული · 50 თავი
1ალგორითმების საფუძვლები0 / 5რა არის ალგორითმიმალესირთულის ინტუიციამალეBig Oმალესაუკეთესო და უარესი შემთხვევამალეამოცანის ამოხსნის ნაბიჯებიმალექვიზი: ალგორითმების საფუძვლებიმალე
2მასივის ხერხები0 / 5მასივის გავლამალეორი მაჩვენებელიმალეპრეფიქსული ჯამებიმალემოძრავი ფანჯარამალეადგილზე შეცვლამალექვიზი: მასივის ხერხებიმალე
3სტრიქონის ხერხები0 / 5სტრიქონის გავლამალეპალინდრომიმალეანაგრამამალესიმბოლოების დათვლამალექვესტრიქონის ძებნამალექვიზი: სტრიქონის ხერხებიმალე
4ძებნა0 / 5ხაზოვანი ძებნამალეორობითი ძებნამალეორობითი ძებნის ვარიაციებიმალეძებნა პასუხზემალეხშირი შეცდომებიმალექვიზი: ძებნამალე
5მარტივი დალაგება0 / 5ბუშტისებრი დალაგებამალეამორჩევით დალაგებამალეჩასმით დალაგებამალესტაბილურობამალეჩაშენებული დალაგებამალექვიზი: მარტივი დალაგებამალე
6რეკურსია0 / 5რეკურსიამალესაბაზისო შემთხვევამალერეკურსიის ხემალეუკუსვლის შესავალიმალერეკურსია თუ ციკლიმალექვიზი: რეკურსიამალე
7ჰეშირება0 / 5ჰეშ-ცხრილიმალეhash map-ის გამოყენებამალეhash setმალეკოლიზიებიმალეხშირი ნიმუშებიმალექვიზი: ჰეშირებამალე
8სტეკი და რიგი0 / 5სტეკიმალერიგიმალეdequeმალეფრჩხილების ბალანსიმალემონოტონური სტეკის შესავალიმალექვიზი: სტეკი და რიგიმალე
9ბმული სიები0 / 5ბმული სიამალესიის გავლამალეჩასმა და წაშლამალესიის შებრუნებამალესწრაფი და ნელი მაჩვენებელიმალექვიზი: ბმული სიებიმალე
10მათემატიკის საფუძვლები0 / 5უდიდესი საერთო გამყოფიმალემარტივი რიცხვებიმალემოდულური არითმეტიკამალებიტური ოპერაციებიმალეკომბინატორიკის საფუძველიმალექვიზი: მათემატიკის საფუძვლებიმალე
პროექტი: ტექსტის ანალიზატორიმალე

პროგრამა, რომელიც ტექსტში სიტყვებს ითვლის, ეძებს და ალაგებს: მასივები, ჰეშ-ცხრილი და ძებნა.

საშუალო10 მოდული · 50 თავი
1დალაგება სიღრმეში0 / 5შერწყმით დალაგებამალესწრაფი დალაგებამალეheap-ით დალაგებამალედათვლით და თანრიგობრივი დალაგებამალედალაგება საკუთარი წესითმალექვიზი: დალაგება სიღრმეშიმალე
2ხეები0 / 5ორობითი ხემალესიღრმეში გავლამალედონეებით გავლამალესიმაღლე და დიამეტრიმალერეკურსიული ნიმუშებიმალექვიზი: ხეებიმალე
3ძებნის ორობითი ხე0 / 5BSTმალეძებნა, ჩასმა და წაშლამალეBST-ის შემოწმებამალეin-order თვისებამალედაბალანსებული ხეების შესავალიმალექვიზი: ძებნის ორობითი ხემალე
4heap0 / 5heapმალეპრიორიტეტული რიგიმალეheapifyმალეK უდიდესი ელემენტიმალეორი heap-ის ნიმუშიმალექვიზი: heapმალე
5გრაფის საფუძვლები0 / 5გრაფის წარმოდგენამალეBFSმალეDFSმალებმული კომპონენტებიმალეციკლის პოვნამალექვიზი: გრაფის საფუძვლებიმალე
6უმოკლესი გზები0 / 5გზა უწონო გრაფშიმალეDijkstraმალეBellman-FordმალეFloyd-Warshallმალეგზები ბადეზემალექვიზი: უმოკლესი გზებიმალე
7უკუსვლა0 / 5ქვესიმრავლეებიმალეგადანაცვლებებიმალეკომბინაციებიმალეN დედოფალიმალეგასხვლამალექვიზი: უკუსვლამალე
8ხარბი ალგორითმები0 / 5ხარბი იდეამალეინტერვალების დაგეგმვამალეგაცვლის არგუმენტიმალეHuffmanმალეროდის არ მუშაობსმალექვიზი: ხარბი ალგორითმებიმალე
9დინამიკური პროგრამირების შესავალი0 / 5დინამიკური პროგრამირების იდეამალეmemoizationმალეtabulationმალეერთგანზომილებიანი ამოცანებიმალეზურგჩანთის ამოცანამალექვიზი: დინამიკური პროგრამირების შესავალიმალე
10მაჩვენებლების ნიმუშები0 / 5ცვლადი ზომის ფანჯარამალეციკლი სიაშიმალეინტერვალების შერწყმამალეორობითი ძებნა პასუხზემალეშუაში შეხვედრამალექვიზი: მაჩვენებლების ნიმუშებიმალე
პროექტი: მარშრუტის მპოვნელიმალე

პროგრამა, რომელიც ბადეზე უმოკლეს გზას პოულობს: გრაფები, BFS და Dijkstra.

მოწინავე10 მოდული · 50 თავი
1დინამიკური პროგრამირება სიღრმეში0 / 5ორგანზომილებიანი ამოცანებიმალეLCS და რედაქტირების მანძილიმალეინტერვალების DPმალეbitmask DPმალეოპტიმიზაციებიმალექვიზი: დინამიკური პროგრამირება სიღრმეშიმალე
2გრაფები სიღრმეში0 / 5ტოპოლოგიური დალაგებამალეunion-findმალემინიმალური დამფარავი ხემალეძლიერად ბმული კომპონენტებიმალეორწილა გრაფიმალექვიზი: გრაფები სიღრმეშიმალე
3ხეები სიღრმეში0 / 5უმცირესი საერთო წინაპარიმალესეგმენტების ხემალეFenwick-ის ხემალეtrieმალეDP ხეზემალექვიზი: ხეები სიღრმეშიმალე
4სტრიქონის ალგორითმები0 / 5KMPმალეZ-ფუნქციამალემოძრავი ჰეშიმალესუფიქსური მასივის შესავალიმალეAho-Corasick-ის შესავალიმალექვიზი: სტრიქონის ალგორითმებიმალე
5რთული სტრუქტურები0 / 5თვითბალანსირებადი ხეებიმალეskip listმალეLRU ქეშიმალეsparse tableმალეunion-find-ის ოპტიმიზაციებიმალექვიზი: რთული სტრუქტურებიმალე
6რიცხვთა თეორია0 / 5სწრაფი ახარისხებამალეერატოსთენეს საცერიმალემოდულური შებრუნებულიმალეკომბინატორიკა მოდულითმალემატრიცის ახარისხებამალექვიზი: რიცხვთა თეორიამალე
7გეომეტრია0 / 5წერტილები და ვექტორებიმალევექტორული ნამრავლიმალეამოზნექილი გარსიმალეწრფეების გადაკვეთამალეsweep lineმალექვიზი: გეომეტრიამალე
8ბიტური ხერხები0 / 5ბიტური ნიმუშებიმალექვესიმრავლეების გადათვლამალეXOR-ის ხერხებიმალეbitsetმალეGray-ის კოდიმალექვიზი: ბიტური ხერხებიმალე
9ნაკადები ქსელში0 / 5მაქსიმალური ნაკადიმალემინიმალური ჭრილიმალეშეწყვილება ორწილა გრაფშიმალედანიშვნის ამოცანამალეგამოყენებამალექვიზი: ნაკადები ქსელშიმალე
10სირთულის თეორია0 / 5P და NPმალეNP-სრული ამოცანებიმალედაყვანამალემიახლოების შესავალიმალეევრისტიკებიმალექვიზი: სირთულის თეორიამალე
პროექტი: ავტოშევსების სისტემამალე

სისტემა, რომელიც აკრეფისას სიტყვებს გთავაზობს: trie, რანჟირება და ქეში.

ექსპერტი10 მოდული · 50 თავი
1გრაფების რთული ალგორითმები0 / 5A*მალეორმხრივი ძებნამალეheavy-light დაშლამალეცენტროიდული დაშლამალედინამიკური ბმულობამალექვიზი: გრაფების რთული ალგორითმებიმალე
2სტრიქონების რთული ალგორითმები0 / 5სუფიქსური ავტომატიმალესუფიქსური ხემალეManacherმალეჰეშირების ხაფანგებიმალეშეკუმშვამალექვიზი: სტრიქონების რთული ალგორითმებიმალე
3შემთხვევითი ალგორითმები0 / 5შემთხვევითობა ალგორითმებშიმალეჰეშირების სქემებიმალეBloom-ის ფილტრიმალეreservoir samplingმალეtreapმალექვიზი: შემთხვევითი ალგორითმებიმალე
4მიახლოება და ნაკადები0 / 5მიახლოებითი ალგორითმებიმალეონლაინ ალგორითმებიმალეკონკურენტული ანალიზიმალენაკადური ალგორითმებიმალეsketch სტრუქტურებიმალექვიზი: მიახლოება და ნაკადებიმალე
5პარალელური ალგორითმები0 / 5პარალელური ალგორითმებიმალეMapReduceმალეconsistent hashingმალეგანაწილებული დალაგებამალეGPU ალგორითმებიმალექვიზი: პარალელური ალგორითმებიმალე
6მუდმივი სტრუქტურები0 / 5მუდმივობამალეფუნქციური სტრუქტურებიმალეropeმალეB-tree და LSMმალექეშისგან დამოუკიდებელი ალგორითმებიმალექვიზი: მუდმივი სტრუქტურებიმალე
7ოპტიმიზაცია0 / 5წრფივი პროგრამირებამალეsimulated annealingმალეგენეტიკური ალგორითმებიმალეშეზღუდვების ამოხსნამალეგანშტოება და საზღვრებიმალექვიზი: ოპტიმიზაციამალე
8ალგორითმები პრაქტიკაში0 / 5საძიებო ინდექსიმალერეკომენდაციებიმალემარშრუტები რუკაზემალებაზის მოთხოვნის ალგორითმებიმალეშეკუმშვა პრაქტიკაშიმალექვიზი: ალგორითმები პრაქტიკაშიმალე
9გასაუბრება0 / 5გასაუბრების ნიმუშებიმალეამოხსნის ახსნამალეკავშირი სისტემის დიზაინთანმალესავარჯიშო გასაუბრებამალეხშირი შეცდომები გასაუბრებაზემალექვიზი: გასაუბრებამალე
10კვლევა0 / 5სტატიების კითხვამალესისწორის დამტკიცებამალეამორტიზებული ანალიზიმალექვედა საზღვრებიმალეღია ამოცანებიმალექვიზი: კვლევამალე
პროექტი: მინი საძიებო სისტემამალე

ძრავა ინვერსიული ინდექსით, რანჟირებით და სწრაფი მოთხოვნებით დიდ მონაცემებზე.