├── .gitignore ├── .idea ├── .gitignore ├── .name ├── compiler.xml ├── gradle.xml ├── jarRepositories.xml ├── misc.xml ├── modules │ ├── DataStructures-Algorithms-Kotlin-RaywenderlichBook.test.iml │ └── DataStructures-Algorithms-Kotlin.test.iml ├── runConfigurations.xml ├── uiDesigner.xml └── vcs.xml ├── README.md ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle.kts └── src └── main └── kotlin ├── 01-kotlin-and-kotlin-standard-library ├── Conditional.kt ├── Functions.kt ├── Generics.kt ├── List.kt ├── Loop.kt ├── Map.kt ├── NullSafety.kt ├── StdFunctions.kt └── Variables.kt ├── 02-complexity ├── ConstantTime.kt ├── LinearTime.kt ├── LogarithmicTime.kt └── QuadraticTime.kt ├── 03-linked-list ├── Challenge │ ├── Challenge1.kt │ ├── Challenge2.kt │ ├── Challenge3.kt │ └── Challenge4.kt ├── LinkedList.kt ├── LinkedListIterator.kt ├── Main.kt └── Node.kt ├── 04-stack-data-structure ├── Challenge │ ├── Challenge1.kt │ └── Challenge2.kt ├── Main.kt └── Stack.kt ├── 05-queue-data-structure └── base │ ├── Main.kt │ ├── Queue.kt │ ├── challenge │ ├── challenge1.kt │ └── challenge2.kt │ ├── doublestack │ ├── Stack.kt │ └── StackQueue.kt │ ├── linkedlist │ ├── DoublyLinkedList.kt │ ├── LinkedListQueue.kt │ └── Node.kt │ ├── list │ └── ArrayListQueue.kt │ └── ringbuffer │ ├── RingBuffer.kt │ └── RingBufferQueue.kt ├── 06-trees ├── Main.kt ├── TreeNode.kt └── challenge │ └── Challenge1.kt ├── 07-binary-trees ├── BinaryNode.kt └── Main.kt ├── 08-binary-search-trees ├── BinarySearchTree.kt └── Main.kt ├── 09-avl-trees ├── AVLNode.kt ├── AVLTree.kt └── Main.kt ├── 10-trie ├── Extensions.kt ├── Main.kt ├── Trie.kt └── TrieNode.kt ├── 11-binary-search ├── BinarySearch.kt └── Main.kt ├── 12-heap-data-structure ├── Heap.kt └── Main.kt ├── 13-priority-queue ├── Main.kt └── PriorityQueue.kt ├── 14-on2-search-algorithms ├── Main.kt ├── bubblesort │ └── BubbleSort.kt ├── insertionsort.kt └── selectionsort │ └── SelectionSort.kt ├── 15-merge-sort ├── Main.kt └── MergeSort.kt ├── 16-radix-sort ├── Main.kt └── RadixSort.kt ├── 17-heap-sort ├── HeapSort.kt └── Main.kt ├── 18-quicksort ├── Main.kt └── quicksort │ ├── QuicksortDutchFlag.kt │ ├── QuicksortHoare.kt │ ├── QuicksortLomuto.kt │ ├── QuicksortMedian.kt │ └── QuicksortNaive.kt ├── 19-graphs ├── AdjacencyList.kt ├── AdjacencyMatrix.kt ├── Edge.kt ├── Graph.kt ├── Main.kt └── Vertex.kt ├── 20-breadth-first-search ├── AdjacencyList.kt ├── Graph.kt ├── Main.kt ├── QueueStack.kt └── Ref.kt ├── 21-depth-first-search ├── AdjacencyList.kt ├── Graph.kt └── Main.kt ├── 22-dijkstras-algorithm ├── AdjacencyList.kt ├── Dijkstra.kt ├── Graph.kt └── Main.kt ├── 23-prims-algorithm ├── AdjacencyList.kt ├── Graph.kt ├── Main.kt └── Prim.kt └── Utils.kt /.gitignore: -------------------------------------------------------------------------------- 1 | # Project exclude paths 2 | /.gradle/ 3 | /build/ -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | DataStructures-Algorithms-Kotlin-RaywenderlichBook -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/compiler.xml -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/gradle.xml -------------------------------------------------------------------------------- /.idea/jarRepositories.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/jarRepositories.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules/DataStructures-Algorithms-Kotlin-RaywenderlichBook.test.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/modules/DataStructures-Algorithms-Kotlin-RaywenderlichBook.test.iml -------------------------------------------------------------------------------- /.idea/modules/DataStructures-Algorithms-Kotlin.test.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/modules/DataStructures-Algorithms-Kotlin.test.iml -------------------------------------------------------------------------------- /.idea/runConfigurations.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/runConfigurations.xml -------------------------------------------------------------------------------- /.idea/uiDesigner.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/uiDesigner.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | kotlin.code.style=official 2 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- 1 | 2 | rootProject.name = "DataStructures-Algorithms-Kotlin-RaywenderlichBook" 3 | 4 | -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Conditional.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Conditional.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Functions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Functions.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Generics.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Generics.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/List.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/List.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Loop.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Loop.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Map.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Map.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/NullSafety.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/NullSafety.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/StdFunctions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/StdFunctions.kt -------------------------------------------------------------------------------- /src/main/kotlin/01-kotlin-and-kotlin-standard-library/Variables.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/01-kotlin-and-kotlin-standard-library/Variables.kt -------------------------------------------------------------------------------- /src/main/kotlin/02-complexity/ConstantTime.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/02-complexity/ConstantTime.kt -------------------------------------------------------------------------------- /src/main/kotlin/02-complexity/LinearTime.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/02-complexity/LinearTime.kt -------------------------------------------------------------------------------- /src/main/kotlin/02-complexity/LogarithmicTime.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/02-complexity/LogarithmicTime.kt -------------------------------------------------------------------------------- /src/main/kotlin/02-complexity/QuadraticTime.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/02-complexity/QuadraticTime.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Challenge/Challenge1.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Challenge/Challenge1.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Challenge/Challenge2.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Challenge/Challenge2.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Challenge/Challenge3.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Challenge/Challenge3.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Challenge/Challenge4.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Challenge/Challenge4.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/LinkedList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/LinkedList.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/LinkedListIterator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/LinkedListIterator.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/03-linked-list/Node.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/03-linked-list/Node.kt -------------------------------------------------------------------------------- /src/main/kotlin/04-stack-data-structure/Challenge/Challenge1.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/04-stack-data-structure/Challenge/Challenge1.kt -------------------------------------------------------------------------------- /src/main/kotlin/04-stack-data-structure/Challenge/Challenge2.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/04-stack-data-structure/Challenge/Challenge2.kt -------------------------------------------------------------------------------- /src/main/kotlin/04-stack-data-structure/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/04-stack-data-structure/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/04-stack-data-structure/Stack.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/04-stack-data-structure/Stack.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/Queue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/Queue.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/challenge/challenge1.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/challenge/challenge1.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/challenge/challenge2.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/challenge/challenge2.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/doublestack/Stack.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/doublestack/Stack.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/doublestack/StackQueue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/doublestack/StackQueue.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/linkedlist/DoublyLinkedList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/linkedlist/DoublyLinkedList.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/linkedlist/LinkedListQueue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/linkedlist/LinkedListQueue.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/linkedlist/Node.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/linkedlist/Node.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/list/ArrayListQueue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/list/ArrayListQueue.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/ringbuffer/RingBuffer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/ringbuffer/RingBuffer.kt -------------------------------------------------------------------------------- /src/main/kotlin/05-queue-data-structure/base/ringbuffer/RingBufferQueue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/05-queue-data-structure/base/ringbuffer/RingBufferQueue.kt -------------------------------------------------------------------------------- /src/main/kotlin/06-trees/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/06-trees/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/06-trees/TreeNode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/06-trees/TreeNode.kt -------------------------------------------------------------------------------- /src/main/kotlin/06-trees/challenge/Challenge1.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/06-trees/challenge/Challenge1.kt -------------------------------------------------------------------------------- /src/main/kotlin/07-binary-trees/BinaryNode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/07-binary-trees/BinaryNode.kt -------------------------------------------------------------------------------- /src/main/kotlin/07-binary-trees/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/07-binary-trees/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/08-binary-search-trees/BinarySearchTree.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/08-binary-search-trees/BinarySearchTree.kt -------------------------------------------------------------------------------- /src/main/kotlin/08-binary-search-trees/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/08-binary-search-trees/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/09-avl-trees/AVLNode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/09-avl-trees/AVLNode.kt -------------------------------------------------------------------------------- /src/main/kotlin/09-avl-trees/AVLTree.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/09-avl-trees/AVLTree.kt -------------------------------------------------------------------------------- /src/main/kotlin/09-avl-trees/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/09-avl-trees/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/10-trie/Extensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/10-trie/Extensions.kt -------------------------------------------------------------------------------- /src/main/kotlin/10-trie/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/10-trie/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/10-trie/Trie.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/10-trie/Trie.kt -------------------------------------------------------------------------------- /src/main/kotlin/10-trie/TrieNode.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/10-trie/TrieNode.kt -------------------------------------------------------------------------------- /src/main/kotlin/11-binary-search/BinarySearch.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/11-binary-search/BinarySearch.kt -------------------------------------------------------------------------------- /src/main/kotlin/11-binary-search/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/11-binary-search/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/12-heap-data-structure/Heap.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/12-heap-data-structure/Heap.kt -------------------------------------------------------------------------------- /src/main/kotlin/12-heap-data-structure/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/12-heap-data-structure/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/13-priority-queue/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/13-priority-queue/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/13-priority-queue/PriorityQueue.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/13-priority-queue/PriorityQueue.kt -------------------------------------------------------------------------------- /src/main/kotlin/14-on2-search-algorithms/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/14-on2-search-algorithms/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/14-on2-search-algorithms/bubblesort/BubbleSort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/14-on2-search-algorithms/bubblesort/BubbleSort.kt -------------------------------------------------------------------------------- /src/main/kotlin/14-on2-search-algorithms/insertionsort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/14-on2-search-algorithms/insertionsort.kt -------------------------------------------------------------------------------- /src/main/kotlin/14-on2-search-algorithms/selectionsort/SelectionSort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/14-on2-search-algorithms/selectionsort/SelectionSort.kt -------------------------------------------------------------------------------- /src/main/kotlin/15-merge-sort/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/15-merge-sort/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/15-merge-sort/MergeSort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/15-merge-sort/MergeSort.kt -------------------------------------------------------------------------------- /src/main/kotlin/16-radix-sort/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/16-radix-sort/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/16-radix-sort/RadixSort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/16-radix-sort/RadixSort.kt -------------------------------------------------------------------------------- /src/main/kotlin/17-heap-sort/HeapSort.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/17-heap-sort/HeapSort.kt -------------------------------------------------------------------------------- /src/main/kotlin/17-heap-sort/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/17-heap-sort/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/quicksort/QuicksortDutchFlag.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/quicksort/QuicksortDutchFlag.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/quicksort/QuicksortHoare.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/quicksort/QuicksortHoare.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/quicksort/QuicksortLomuto.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/quicksort/QuicksortLomuto.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/quicksort/QuicksortMedian.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/quicksort/QuicksortMedian.kt -------------------------------------------------------------------------------- /src/main/kotlin/18-quicksort/quicksort/QuicksortNaive.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/18-quicksort/quicksort/QuicksortNaive.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/AdjacencyList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/AdjacencyList.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/AdjacencyMatrix.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/AdjacencyMatrix.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/Edge.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/Edge.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/Graph.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/Graph.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/19-graphs/Vertex.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/19-graphs/Vertex.kt -------------------------------------------------------------------------------- /src/main/kotlin/20-breadth-first-search/AdjacencyList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/20-breadth-first-search/AdjacencyList.kt -------------------------------------------------------------------------------- /src/main/kotlin/20-breadth-first-search/Graph.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/20-breadth-first-search/Graph.kt -------------------------------------------------------------------------------- /src/main/kotlin/20-breadth-first-search/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/20-breadth-first-search/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/20-breadth-first-search/QueueStack.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/20-breadth-first-search/QueueStack.kt -------------------------------------------------------------------------------- /src/main/kotlin/20-breadth-first-search/Ref.kt: -------------------------------------------------------------------------------- 1 | package `20-breadth-first-search` 2 | 3 | data class Ref(var value: T) -------------------------------------------------------------------------------- /src/main/kotlin/21-depth-first-search/AdjacencyList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/21-depth-first-search/AdjacencyList.kt -------------------------------------------------------------------------------- /src/main/kotlin/21-depth-first-search/Graph.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/21-depth-first-search/Graph.kt -------------------------------------------------------------------------------- /src/main/kotlin/21-depth-first-search/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/21-depth-first-search/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/22-dijkstras-algorithm/AdjacencyList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/22-dijkstras-algorithm/AdjacencyList.kt -------------------------------------------------------------------------------- /src/main/kotlin/22-dijkstras-algorithm/Dijkstra.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/22-dijkstras-algorithm/Dijkstra.kt -------------------------------------------------------------------------------- /src/main/kotlin/22-dijkstras-algorithm/Graph.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/22-dijkstras-algorithm/Graph.kt -------------------------------------------------------------------------------- /src/main/kotlin/22-dijkstras-algorithm/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/22-dijkstras-algorithm/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/23-prims-algorithm/AdjacencyList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/23-prims-algorithm/AdjacencyList.kt -------------------------------------------------------------------------------- /src/main/kotlin/23-prims-algorithm/Graph.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/23-prims-algorithm/Graph.kt -------------------------------------------------------------------------------- /src/main/kotlin/23-prims-algorithm/Main.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/23-prims-algorithm/Main.kt -------------------------------------------------------------------------------- /src/main/kotlin/23-prims-algorithm/Prim.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/23-prims-algorithm/Prim.kt -------------------------------------------------------------------------------- /src/main/kotlin/Utils.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mohamedtamer0/DataStructures-Algorithms-Kotlin/HEAD/src/main/kotlin/Utils.kt --------------------------------------------------------------------------------