{"id":13417830,"url":"https://github.com/gzc/CLRS","last_synced_at":"2025-03-15T02:31:47.426Z","repository":{"id":12267409,"uuid":"14887195","full_name":"gzc/CLRS","owner":"gzc","description":":notebook:Solutions to Introduction to Algorithms","archived":false,"fork":false,"pushed_at":"2023-10-15T21:44:54.000Z","size":12300,"stargazers_count":9473,"open_issues_count":84,"forks_count":2752,"subscribers_count":380,"default_branch":"master","last_synced_at":"2024-10-29T15:33:01.637Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gzc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2013-12-03T08:07:20.000Z","updated_at":"2024-10-27T13:04:02.000Z","dependencies_parsed_at":"2022-07-11T02:31:23.615Z","dependency_job_id":"a9e8aa30-8e0d-4fc2-8e49-c575f9047084","html_url":"https://github.com/gzc/CLRS","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gzc%2FCLRS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gzc%2FCLRS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gzc%2FCLRS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gzc%2FCLRS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gzc","download_url":"https://codeload.github.com/gzc/CLRS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243674996,"owners_count":20329186,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T22:00:53.525Z","updated_at":"2025-03-15T02:31:46.458Z","avatar_url":"https://github.com/gzc.png","language":"C++","readme":"# Solutions to CLRS.\nSolutions to *Introduction to Algorithms* by Charles E. Leiserson, Clifford Stein, Ronald Rivest, and Thomas H. Cormen (CLRS).\n\n![](https://images-na.ssl-images-amazon.com/images/I/51n%2B3GEQvYL._SX433_BO1,204,203,200_.jpg)\n\n## Contributor\n1. [Soyn](https://github.com/Soyn)\n2. [idf](https://github.com/idf)\n3. [W4anD0eR96](https://github.com/W4anD0eR96)\n4. [knight42](https://github.com/knight42)\n5. [ajinkyakolhe112](https://github.com/ajinkyakolhe112)\n6. [an-yun](https://github.com/an-yun)\n7. [y1y](https://github.com/y1y)\n8. [RepapLataf](https://github.com/RepapLataf)\n9. [Ghost---Shadow](https://github.com/Ghost---Shadow)\n10. [wonjunetai](https://github.com/wonjunetai)\n11. [suensky](https://github.com/suensky)\n12. [xwu64](https://github.com/xwu64)\n13. [ryuxin](https://github.com/ryuxin)\n14. [Puriney](https://github.com/Puriney)\n15. [wild-flame](https://github.com/wild-flame)\n16. [zhangysh1995](https://github.com/zhangysh1995)\n17. [DarthUjj](https://github.com/DarthUjj)\n18. [VMatrix1900](https://github.com/VMatrix1900)\n19. [Jingru](https://github.com/Jingru)\n20. [prasook-jain](https://github.com/prasook-jain)\n21. [Mundhey](https://github.com/Mundhey)\n22. [Cokile](https://github.com/Cokile)\n23. [wuchichung](https://github.com/wuchichung)\n24. [saurabhvyas](https://github.com/saurabhvyas)\n25. [codemukul95](https://github.com/codemukul95)\n26. [JasonQSY](https://github.com/JasonQSY)\n27. [imbrobits](https://github.com/imbrobits)\n28. [zhanglanqing](https://github.com/zhanglanqing)\n29. [tushar-rishav](https://github.com/tushar-rishav)\n30. [ravgill](https://github.com/ravgill)\n31. [Mad_Kingu](https://github.com/Mad-Kingu)\n32. [kotoz](https://github.com/Kottoz)\n\nIf I miss your name here, please pull a request to me to fix.\n\nYou maybe interested in another repo [gitstats](https://github.com/gzc/gitstats) which generates repo contribution of CLRS.\n\n## This repo needs your help.\nIf you are interested in this project, you could complete problems which are marked **\"UNSOLVED\"** in the following list. Or if you are interested in certain chapters that have not been completed, you could fork this project and issue a pull request to this repo. Appreciate your efforts.\n\n如果你感兴趣,可以完成没有完成的题(下面有个UNSOLVED列表),或者如果你对某章节感兴趣想要完成,可以fork这个项目然后pull request进这个repo。\n\nIn order to speed up this project, we will ignore any hard problems (for instance, problems in the very end of each chapter) and review them when finishing mediocre problems. Moreover, we will only focus on sections that are interesting. You could also help to finish these hard problems.\n\nIf a problem is too easy to solve, we'll mark it as **straightforward** in order to speed up the progress.\n\n***\n\n\u003ctable class=\"table table-bordered table-striped table-condensed\"\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003eChapter\u003c/font\u003e\u003c/td\u003e\n\t    \u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003eSection\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e \u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart I: Foundations\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n       \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C01-The-Role-of-Algorithms-in-Computing/1.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C01-The-Role-of-Algorithms-in-Computing/1.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C01-The-Role-of-Algorithms-in-Computing/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n          \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C02-Getting-Started/2.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C02-Getting-Started/2.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C02-Getting-Started/2.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C02-Getting-Started/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C03-Growth-of-Functions/3.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C03-Growth-of-Functions/3.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C03-Growth-of-Functions/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n              \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eIV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C04-Recurrences/4.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C04-Recurrences/4.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C04-Recurrences/4.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C04-Recurrences/4.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C04-Recurrences/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C05-Probabilistic-Analysis-and-Randomized-Algorithms/5.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C05-Probabilistic-Analysis-and-Randomized-Algorithms/5.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C05-Probabilistic-Analysis-and-Randomized-Algorithms/5.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C05-Probabilistic-Analysis-and-Randomized-Algorithms/5.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C05-Probabilistic-Analysis-and-Randomized-Algorithms/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n\t\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003e Part II: Sorting and Order Statistics\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eVI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/6.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/6.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/6.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/6.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/6.5.md\"\u003e\u003cfont color=\"black\"\u003e5\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C06-Heapsort/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eVII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C07-Quicksort/7.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C07-Quicksort/7.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C07-Quicksort/7.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C07-Quicksort/7.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C07-Quicksort/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eVIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C08-Sorting-in-Linear-Time/8.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C08-Sorting-in-Linear-Time/8.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C08-Sorting-in-Linear-Time/8.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C08-Sorting-in-Linear-Time/8.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C08-Sorting-in-Linear-Time/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eIX\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C09-Medians-and-Order-Statistics/9.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C09-Medians-and-Order-Statistics/9.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C09-Medians-and-Order-Statistics/9.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C09-Medians-and-Order-Statistics/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n        \u003ctr\u003e\n\t\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart III: Data Structures\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eX\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C10-Elementary-Data-Structures/10.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C10-Elementary-Data-Structures/10.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C10-Elementary-Data-Structures/10.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C10-Elementary-Data-Structures/10.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C10-Elementary-Data-Structures/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/11.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/11.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/11.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/11.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/11.5.md\"\u003e\u003cfont color=\"black\"\u003e5\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C11-Hash-Tables/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n            \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C12-Binary-Search-Trees/12.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C12-Binary-Search-Trees/12.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C12-Binary-Search-Trees/12.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n        \u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C13-Red-Black-Trees/13.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C13-Red-Black-Trees/13.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C13-Red-Black-Trees/13.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C13-Red-Black-Trees/13.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C13-Red-Black-Trees/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXIV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C14-Augmenting-Data-Structures/14.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C14-Augmenting-Data-Structures/14.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C14-Augmenting-Data-Structures/14.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C14-Augmenting-Data-Structures/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart IV: Advanced Design and Analysis Techniques\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C15-Dynamic-Programming/15.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C15-Dynamic-Programming/15.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C15-Dynamic-Programming/15.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C15-Dynamic-Programming/15.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C15-Dynamic-Programming/15.5.md\"\u003e\u003cfont color=\"black\"\u003e5\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXVI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C16-Greedy-Algorithms/16.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C16-Greedy-Algorithms/16.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C16-Greedy-Algorithms/16.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXVII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C17-Amortized-Analysis/17.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C17-Amortized-Analysis/17.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart V: Advanced Data Structures\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXVIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C18-B-Trees/18.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C18-B-Trees/18.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C18-B-Trees/18.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXIX\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C19-Binomial-Heaps/19.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C19-Binomial-Heaps/19.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C21-Data-Structures-for-Disjoint-Sets/21.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C21-Data-Structures-for-Disjoint-Sets/21.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C21-Data-Structures-for-Disjoint-Sets/21.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart VI: Graph Algorithms\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/22.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/22.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/22.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/22.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/22.5.md\"\u003e\u003cfont color=\"black\"\u003e5\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C22-Elementary-Graph-Algorithms/problem.md\"\u003e\u003cfont color=\"black\"\u003ep\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C23-Minimum-Spanning-Trees/23.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C23-Minimum-Spanning-Trees/23.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXIV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C24-Single-Source-Shortest-Paths/24.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C24-Single-Source-Shortest-Paths/24.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C24-Single-Source-Shortest-Paths/24.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C24-Single-Source-Shortest-Paths/24.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C25-All-Pairs-Shortest-Paths/25.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C25-All-Pairs-Shortest-Paths/25.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C25-All-Pairs-Shortest-Paths/25.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXVI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C26-Flow-networks/26.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C26-Flow-networks/26.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C26-Flow-networks/26.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\n\t\u003ctd align = \"center\" colspan='20' width = \"100%\"\u003e\u003cfont size=\"4px\" color=\"#0x888888\"\u003ePart VII: Selected Topics\u003c/font\u003e\u003c/td\u003e\u003c/tr\u003e\n\t\u003ctr\u003e\u003ctd align=\"center\"\u003eXXXI\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C31-Number-Theoretic-Algorithms/31.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C31-Number-Theoretic-Algorithms/31.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\u003ctr\u003e\n    \t\u003ctd align=\"center\"\u003eXXXII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C32-String-Matching/32.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C32-String-Matching/32.2.md\"\u003e\u003cfont color=\"black\"\u003e2\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C32-String-Matching/32.3.md\"\u003e\u003cfont color=\"black\"\u003e3\u003c/font\u003e\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C32-String-Matching/32.4.md\"\u003e\u003cfont color=\"black\"\u003e4\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\u003ctd align=\"center\"\u003eXXXIII\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C33-Computational-Geometry/33.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\t\t\u003ctr\u003e\u003ctd align=\"center\"\u003eXXXV\u003c/td\u003e\n\t\t\u003ctd align=\"center\"\u003e\u003ca href=\"./C35-Approximation-Algorithms/35.1.md\"\u003e\u003cfont color=\"black\"\u003e1\u003c/font\u003e\u003c/td\u003e\n\t\t\u003c/tr\u003e\n\u003c/table\u003e\n\n***\n\n\n## Data Structure\u0026algorithm implementation\n\n### BASIC\n* [Heap](./C06-Heapsort/heap.cpp)\n* [Priority Queue](./C06-Heapsort/p_queue.h)\n* [Quicksort](./C07-Quicksort/quicksort.py)\n* [Radixsort](./C08-Sorting-in-Linear-Time/exercise_code/radixSort.cpp)\n* [Counting Sort](./C08-Sorting-in-Linear-Time/exercise_code/in_place_counting_sort.py)\n* [K-th Finding](./C09-Medians-and-Order-Statistics/worst-case-linear-time.cpp)\n* [Deque(py)](./C10-Elementary-Data-Structures/exercise_code/deque.py) [Deque(c++)](./C10-Elementary-Data-Structures/exercise_code/deque.cpp)\n\n### DIVIDE and CONQUER\n* [Karatsuba](./other/Karatsuba)\n\n\n### TREE/ADVANCED\n* [BST](./C12-Binary-Search-Trees/BSTree.h)\n* [RBT](./C13-Red-Black-Trees/rbtree.cpp)\n* [Btree](./C18-B-Trees/btree.cpp)\n* [BinomialHeap](./C19-Binomial-Heaps/BinomialHeap.h)  [Driver](././C19-Binomial-Heaps/Main.cpp)\n* [SegmentTree](./other/segmentTree.cpp)\n* [Trie](./other/trie.cpp)\n* [UnionFind](./C21-Data-Structures-for-Disjoint-Sets/uf.cpp)\n\n### DYNAMIC/GREEDY\n* [Matrix Chain](./C15-Dynamic-Programming/Matrix-chain-multiplication.c)\n* [Huffman](./C16-Greedy-Algorithms/huffman)\n\n### GRAPH\n* [Kosaraju's Algorithm ( strongly connected components )](./C22-Elementary-Graph-Algorithms/elementary_graph_algo.py#L70)\n* [Maximum Flow](./C26-Flow-networks/maxflow)\n* [Floyd-Warshall](./C25-All-Pairs-Shortest-Paths/Floyd_Warshall.cpp)\n\n### GEOMETRY\n* [LineIntersection](./C33-Computational-Geometry/twoline.cpp)\n* Convex Hull\n  * [Graham Scan](./C33-Computational-Geometry/Graham_Scan.py)\n\n### STRING\n* [BruteForce](./C32-String-Matching/BF.c)\n* [KMP](./C32-String-Matching/KMP.c)\n* [DFA](./C32-String-Matching/FA.c)\n\n### UTILITY\n* [Split string by delimiter in C++](./other/stringSpilit.cpp)\n\n# UNSOLVED\n\n[31.1.11](./C31-Number-Theoretic-Algorithms/31.1.md#exercises-311-11)\n[31.2.7](./C31-Number-Theoretic-Algorithms/31.2.md#exercises-312-7)\n[31.2.9](./C31-Number-Theoretic-Algorithms/31.2.md#exercises-312-9)\n\n[32.2.4](./C32-String-Matching/32.2.md#exercises-322-4)\n[32.3.4](./C32-String-Matching/32.3.md#exercises-323-4-)\n[32.4.6](./C32-String-Matching/32.4.md#exercises-324-6-)\n\n***\nFollow [@louis1992](https://github.com/gzc) on github to help finish this task.\nYou can also subscribe my [youtube channel](https://www.youtube.com/channel/UCAvvkYnRNyObcHzOCaVgSrQ).\n\n\u003csub\u003e**Disclaimer**: the solutions in this repository are crowdsourced work, and in any form it neither represents any opinion of nor affiliates to the authors of Introduction to Algorithms or the MIT press.\u003csub\u003e\n","funding_links":[],"categories":["TODO scan for Android support in followings","C++","Algorithm Interview","书签"],"sub_categories":["6. Others","算法"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgzc%2FCLRS","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgzc%2FCLRS","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgzc%2FCLRS/lists"}