SYMBOL INDEX (2401 symbols across 406 files) FILE: DynamicStackBaseArray.java class DynamicStackBaseArray (line 11) | public class DynamicStackBaseArray implements Iterable { method DynamicStackBaseArray (line 21) | public DynamicStackBaseArray(int length) { method push (line 32) | public void push(T item) { method pop (line 46) | public T pop() { method resize (line 68) | private void resize(int size) { method peek (line 77) | public T peek() { method isEmpty (line 86) | public boolean isEmpty() { method size (line 95) | public int size() { method iterator (line 99) | @Override class ArrayIterator (line 105) | class ArrayIterator implements Iterator { method hasNext (line 108) | @Override method next (line 113) | @Override method main (line 119) | public static void main(String[] args) { FILE: StackBaseArray.java class StackBaseArray (line 7) | public class StackBaseArray { method StackBaseArray (line 12) | public StackBaseArray(int capactiy) { method push (line 23) | public boolean push(int item) { method pop (line 37) | public int pop(){ method main (line 47) | public static void main(String[] args){ FILE: c-cpp/05_array/Array_gp.c function Array (line 6) | Array* arrayCreate() function arrayInit (line 28) | void arrayInit(Array *array, int size, int typeSize) function arrayInsert (line 49) | int arrayInsert(Array *array, size_t pos, void *const value) function arraySearchValue (line 94) | size_t arraySearchValue(Array *array, void* const value) function arrayModify (line 141) | int arrayModify(Array *array, size_t pos, void *const value) function arrayLen (line 167) | size_t arrayLen(Array *array) function arraySize (line 177) | size_t arraySize(Array *array) function arrayEmpty (line 187) | void arrayEmpty(Array *array) function arrayDelValue (line 200) | void arrayDelValue(Array *array, void *value) function arrayDelIndex (line 250) | void arrayDelIndex(Array *array, size_t pos) FILE: c-cpp/05_array/Array_gp.h type Array (line 7) | typedef struct Array FILE: c-cpp/05_array/array.c type array (line 5) | struct array { function dump (line 11) | void dump(struct array *array) function alloc (line 19) | void alloc(struct array *array) function insert (line 24) | int insert(struct array *array, int elem) function delete (line 44) | int delete(struct array *array, int idx) function search (line 55) | int search(struct array *array, int elem) function main (line 69) | int main() FILE: c-cpp/06_linkedlist/Dlist/Dlist.c function dlist_init (line 14) | void dlist_init(stDlistHead *dlist) //链表初始化 function dlist_destory (line 22) | void dlist_destory(stDlistHead *dlist) //删除链表 function dlist_insert_head (line 39) | int dlist_insert_head(stDlistHead *dlist,stDlistNode *pNode,int data) /... function stDlistNode (line 70) | stDlistNode * dlist_remove_tail(stDlistHead *dlist) //删除尾部节点,并返回删除节点 function dlist_remove_node (line 94) | void dlist_remove_node(stDlistHead * dlist,stDlistNode *pNode) //删除指定节点 function stDlistNode (line 127) | stDlistNode * dlist_search(stDlistHead * dlist,int data) //根据值搜索节点,并返回 function dlist_dump (line 142) | void dlist_dump(stDlistHead *dlist) //显示链表中的数据 function Lru_dlist (line 156) | void Lru_dlist(stDlistHead *dlist,int data) //LRU(最近最少使用)缓存淘汰算法 function main (line 176) | int main() FILE: c-cpp/06_linkedlist/Dlist/Dlist.h type stDlistNode (line 10) | typedef struct DlistNode //双向链表中每一个节点 type stDlistHead (line 17) | typedef struct Dlisthead //定义链表总体 FILE: c-cpp/06_linkedlist/LRUBasedLinkedList.cpp class SNode (line 4) | class SNode class SList (line 11) | class SList function main (line 193) | int main(int argc, char const *argv[]) FILE: c-cpp/06_linkedlist/list_isPalindrome/LinkList.cpp function CreateListHead (line 3) | void CreateListHead(LinkList *&L,ElemType a[],int n) function CreateListTail (line 17) | void CreateListTail(LinkList *&L,ElemType a[],int n) function InitList (line 32) | void InitList(LinkList *&L) function DestroyList (line 37) | void DestroyList(LinkList *&L) function ListEmpty (line 48) | bool ListEmpty(LinkList *L) function ListLength (line 52) | int ListLength(LinkList *L) function ShowList (line 63) | void ShowList(LinkList *L) function GetListElem (line 73) | bool GetListElem(LinkList *L,int i,ElemType &e) function LocateElem (line 90) | int LocateElem(LinkList*L,ElemType e) function ListInsert (line 105) | bool ListInsert(LinkList *&L,int i,ElemType e) function ListDelete (line 127) | bool ListDelete(LinkList *&L,int i,ElemType &e) FILE: c-cpp/06_linkedlist/list_isPalindrome/LinkList.h type ElemType (line 6) | typedef char ElemType; type LinkList (line 7) | typedef struct LNode FILE: c-cpp/06_linkedlist/palindromeList/LinkedList.hpp class LinkedList (line 13) | class LinkedList { function ListNode (line 59) | ListNode* LinkedList::FindElem(int elemVal) { FILE: c-cpp/06_linkedlist/palindromeList/ListNode.hpp class ListNode (line 10) | class ListNode { FILE: c-cpp/06_linkedlist/palindromeList/palindromeList.cpp function CheckPalindromeList (line 10) | bool CheckPalindromeList(LinkedList *list) { function main (line 67) | int main(int argc, char const *argv[]) { FILE: c-cpp/06_linkedlist/single_list.c type single_list (line 4) | struct single_list { type single_list_head (line 9) | struct single_list_head { function is_empty (line 13) | bool is_empty(struct single_list_head *head) function dump (line 18) | void dump(struct single_list_head *head) function insert (line 29) | void insert(struct single_list **prev, struct single_list *elem) function insert_head (line 38) | void insert_head(struct single_list_head *head, struct single_list *elem) type single_list (line 43) | struct single_list type single_list (line 43) | struct single_list type single_list (line 45) | struct single_list type single_list (line 58) | struct single_list type single_list_head (line 58) | struct single_list_head type single_list (line 63) | struct single_list type single_list_head (line 63) | struct single_list_head type single_list (line 65) | struct single_list function reverse (line 75) | void reverse(struct single_list_head* head) function is_cyclic (line 88) | bool is_cyclic(struct single_list_head* head) type single_list (line 104) | struct single_list type single_list_head (line 104) | struct single_list_head type single_list (line 106) | struct single_list type single_list (line 107) | struct single_list function main (line 122) | int main() FILE: c-cpp/06_linkedlist/singlelist_gc/singleList.c function linkedList (line 5) | linkedList * listCreate() function listRelease (line 25) | void listRelease(linkedList *list) function listEmpty (line 38) | void listEmpty(linkedList *list) function linkedList (line 64) | linkedList * listAddNodeHead(linkedList *list, void * value) function linkedList (line 86) | linkedList * listAddNodeTail(linkedList *list, void *value) function linkedList (line 125) | linkedList * listInsertNode(linkedList *list, listNode *old_node, void *... function listDelNode (line 165) | void listDelNode(linkedList *list, listNode *node) function listNode (line 198) | listNode * listSearchKey(linkedList *list, void *key) function listNode (line 229) | listNode * listIndex(linkedList *list, long index) function linkedList (line 251) | linkedList* listRewind(linkedList *list) function listLength (line 273) | size_t listLength(linkedList *list) FILE: c-cpp/06_linkedlist/singlelist_gc/singleList.h type listNode (line 7) | typedef struct listNode type linkedList (line 13) | typedef struct linkedList FILE: c-cpp/07_linkedlist/LinkedListAlgo.c type SinglyLinkedNode (line 14) | typedef struct SinglyLinkedNode { function reverse (line 24) | void reverse(SinglyLinkedNode** head_ref) { function test_reverse (line 41) | void test_reverse() { function checkCircle (line 54) | int checkCircle(SinglyLinkedNode** head_ref) { function test_checkCircle (line 65) | void test_checkCircle() { function SinglyLinkedNode (line 95) | SinglyLinkedNode* mergeSortedLinkedList(SinglyLinkedNode* la, SinglyLink... function moveNode (line 125) | void moveNode(SinglyLinkedNode** dest_ref, SinglyLinkedNode** src_ref) { function test_mergeSortedLinkedList (line 135) | void test_mergeSortedLinkedList() { function deleteLastKth (line 155) | void deleteLastKth(SinglyLinkedNode** head_ref, int k) { function test_deleteLastKth (line 186) | void test_deleteLastKth() { function SinglyLinkedNode (line 206) | SinglyLinkedNode* findMiddleNode(SinglyLinkedNode* head) { function test_findMiddleNode (line 220) | void test_findMiddleNode() { function insertNode (line 236) | void insertNode(SinglyLinkedNode** head_ref, int data) { function printLinkedList (line 244) | void printLinkedList(SinglyLinkedNode* node) { function test (line 254) | void test() { FILE: c-cpp/07_linkedlist/SingleList.cpp class CElement (line 7) | class CElement class CSingleList (line 11) | class CSingleList class CElement (line 96) | class CElement function CreateList (line 114) | void CreateList(CSingleList& lst) function PrintList (line 124) | void PrintList(CSingleList& lst) function main (line 134) | int main() function CElement (line 291) | CElement* CSingleList::Insert(void* lpData, int iDataSize) function CElement (line 302) | CElement* CSingleList::Insert(CElement* lpElement, void* lpData, int iDa... function CElement (line 357) | CElement* CSingleList::Tail() function CElement (line 367) | CElement* CSingleList::Begin() function CElement (line 379) | CElement* CSingleList::Next() function CElement (line 393) | CElement* CSingleList::End() function CElement (line 533) | CElement* CSingleList::Center() FILE: c-cpp/07_linkedlist/linked_list_algo.hpp function traverse (line 20) | void traverse(typename Node::ptr_t head, UnaryFunc do_traverse) { function reverse (line 30) | typename Node::ptr_t reverse(typename Node::ptr_t head) { function check_circle (line 46) | bool check_circle(typename Node::ptr_t head) { function merge_two_sorted_lists (line 62) | typename Node::ptr_t merge_two_sorted_lists(typename Node::ptr_t lhs, function deleth_last_Kth (line 99) | typename Node::ptr_t deleth_last_Kth(typename Node::ptr_t head, function find_middle_node (line 121) | typename Node::ptr_t find_middle_node(typename Node::ptr_t head) { FILE: c-cpp/07_linkedlist/linklist_jinshaohui.c type stlistNode (line 11) | struct stlistNode function listNode (line 18) | listNode reverseList(listNode *head) function hasCycle (line 35) | int hasCycle(listNode *head) function listNode (line 53) | listNode *mergeTwoLists(listNode *l1,listNode *l2) function listNode (line 88) | listNode * removeNthFromEnd(listNode*headi,int n) function listNode (line 127) | listNode *middleNode(listNode *head) FILE: c-cpp/08_stack/StackBasedOnArray/StackBasedOnArray.cpp function T (line 71) | T ArrayStack::pop(){ function T (line 78) | T ArrayStack::peek(){ function main (line 91) | int main(int argc, char const *argv[]) FILE: c-cpp/08_stack/StackBasedOnLinkedList/StackBasedOnLinkedList.cpp function T (line 49) | T LinkedListStack::peek() function T (line 61) | T LinkedListStack::pop() function main (line 84) | int main(int argc, char const *argv[]) FILE: c-cpp/08_stack/StackBasedOnLinkedList/StackBasedOnLinkedList.h type LinkedNode (line 14) | struct LinkedNode FILE: c-cpp/08_stack/arrayStack/arrayStack.c function stArrayStack (line 14) | stArrayStack * arrayStack_create(int size) function arrayStack_destory (line 36) | void arrayStack_destory(stArrayStack * parrStack) function arrayStack_pop (line 52) | int arrayStack_pop(stArrayStack *parrStack) function arrayStack_push (line 66) | int arrayStack_push(stArrayStack *parrStack,int data) function arrayStack_push_new (line 79) | int arrayStack_push_new(stArrayStack*parrStack,int data) function arrayStack_dump (line 108) | void arrayStack_dump(stArrayStack *parrStack) function main (line 125) | int main() FILE: c-cpp/08_stack/arrayStack/arrayStack.h type stArrayStack (line 12) | typedef struct _array_stack FILE: c-cpp/08_stack/linkList/linklist_stack.c function linklist_stack (line 13) | linklist_stack * stack_create() function stack_destory (line 28) | void stack_destory(linklist_stack* stack) function stack_push (line 45) | int stack_push(linklist_stack *stack,int data) function stack_pop (line 62) | int stack_pop(linklist_stack*stack,int *data) function stack_dump (line 82) | void stack_dump(linklist_stack *stack) function main (line 94) | int main() FILE: c-cpp/08_stack/linkList/linklist_stack.h type linklist_stack (line 12) | typedef struct _linkliststack FILE: c-cpp/08_stack/stack_based_on_linked_list.hpp class Stack (line 14) | class Stack { method empty (line 23) | bool empty(void) const { method push (line 26) | void push(const value_type& value) { method value_type (line 35) | value_type top(void) const { method pop (line 42) | void pop(void) { FILE: c-cpp/09_queue/array_queue.hpp class ArrayQueue (line 9) | class ArrayQueue { method ArrayQueue (line 17) | ArrayQueue() = delete; method ArrayQueue (line 18) | ArrayQueue(const size_t capacity) : capacity_(capacity) { method ArrayQueue (line 27) | ArrayQueue(const ArrayQueue& other) : capacity_(other.capacity_) { method ArrayQueue (line 33) | ArrayQueue& operator=(const ArrayQueue& rhs) { method ArrayQueue (line 44) | ArrayQueue(ArrayQueue&& other) : items_(other.items_), method ArrayQueue (line 53) | ArrayQueue& operator=(ArrayQueue&& rhs) { method enqueue (line 67) | void enqueue(T item) { method T (line 73) | T head() const { method dequeue (line 80) | void dequeue() { method traverse (line 90) | void traverse(UnaryFunc do_traverse) { FILE: c-cpp/09_queue/array_queue/array_queue.c function array_queue (line 14) | array_queue * array_queue_create(int size) function array_queue_destory (line 37) | void array_queue_destory(array_queue *queue) function array_queue_enqueue (line 54) | int array_queue_enqueue(array_queue *queue,int data) function array_queue_dequeue (line 70) | int array_queue_dequeue(array_queue * queue,int *data) function array_queue_dump (line 84) | void array_queue_dump(array_queue *queue) function main (line 105) | int main() FILE: c-cpp/09_queue/array_queue/array_queue.h type array_queue (line 11) | typedef struct _array_queue FILE: c-cpp/09_queue/array_queue_test.cc function main (line 4) | int main() { FILE: c-cpp/09_queue/block_queue.hpp class BlockQueue (line 13) | class BlockQueue { method BlockQueue (line 27) | BlockQueue() = delete; method BlockQueue (line 28) | BlockQueue(const size_type capacity) : capacity_(capacity) {} method BlockQueue (line 29) | BlockQueue(const BlockQueue&) = default; method BlockQueue (line 30) | BlockQueue(BlockQueue&&) = default; method BlockQueue (line 31) | BlockQueue& operator=(const BlockQueue&) = default; method BlockQueue (line 32) | BlockQueue& operator=(BlockQueue&&) = default; method empty (line 35) | bool empty() const { return container_.empty(); } method full (line 36) | bool full() const { return not(container_.size() < capacity_); } method put (line 39) | void put(const value_type& item) { method take (line 47) | void take(value_type& out) { method put_for (line 57) | bool put_for(const value_type& item, const Duration& d) { method take_for (line 68) | bool take_for(const Duration& d, value_type& out) { FILE: c-cpp/09_queue/circular_queue.hpp class CircularQueue (line 9) | class CircularQueue { method CircularQueue (line 17) | CircularQueue() = delete; method CircularQueue (line 18) | CircularQueue(const size_t capacity) : capacity_(capacity) { method CircularQueue (line 27) | CircularQueue(const CircularQueue& other) : capacity_(other.capacity_) { method CircularQueue (line 33) | CircularQueue& operator=(const CircularQueue& rhs) { method CircularQueue (line 44) | CircularQueue(CircularQueue&& other) : items_(other.items_), method CircularQueue (line 53) | CircularQueue& operator=(CircularQueue&& rhs) { method enqueue (line 67) | void enqueue(T item) { method T (line 74) | T head() const { method dequeue (line 81) | void dequeue() { method traverse (line 91) | void traverse(UnaryFunc do_traverse) { FILE: c-cpp/09_queue/circular_queue_test.cc function main (line 4) | int main() { FILE: c-cpp/09_queue/concurrency_queue.hpp class ConcurrencyQueue (line 14) | class ConcurrencyQueue { method ConcurrencyQueue (line 26) | ConcurrencyQueue() = default; method ConcurrencyQueue (line 27) | ConcurrencyQueue(const ConcurrencyQueue&) = default; method ConcurrencyQueue (line 28) | ConcurrencyQueue(ConcurrencyQueue&&) = default; method ConcurrencyQueue (line 29) | ConcurrencyQueue& operator=(const ConcurrencyQueue&) = default; method ConcurrencyQueue (line 30) | ConcurrencyQueue& operator=(ConcurrencyQueue&&) = default; method empty_ (line 33) | bool empty_() const { return container_.empty(); } method empty (line 36) | bool empty() const { method push (line 40) | void push(value_type item) { method wait_and_pop (line 45) | void wait_and_pop(value_type& out) { method wait_and_pop (line 53) | std::shared_ptr wait_and_pop() { method try_pop (line 62) | bool try_pop(value_type& out) { method try_pop (line 72) | std::shared_ptr try_pop() { FILE: c-cpp/09_queue/dynamic_array_queue.hpp class DynamicArrayQueue (line 9) | class DynamicArrayQueue { method DynamicArrayQueue (line 17) | DynamicArrayQueue() = delete; method DynamicArrayQueue (line 18) | DynamicArrayQueue(const size_t capacity) : capacity_(capacity) { method DynamicArrayQueue (line 27) | DynamicArrayQueue(const DynamicArrayQueue& other) : capacity_(other.ca... method DynamicArrayQueue (line 33) | DynamicArrayQueue& operator=(const DynamicArrayQueue& rhs) { method DynamicArrayQueue (line 44) | DynamicArrayQueue(DynamicArrayQueue&& other) : items_(other.items_), method DynamicArrayQueue (line 53) | DynamicArrayQueue& operator=(DynamicArrayQueue&& rhs) { method enqueue (line 67) | void enqueue(T item) { method T (line 81) | T head() const { method dequeue (line 88) | void dequeue() { method traverse (line 98) | void traverse(UnaryFunc do_traverse) { FILE: c-cpp/09_queue/dynamic_array_queue_test.cc function main (line 4) | int main() { FILE: c-cpp/09_queue/linked_queue.hpp type Node (line 11) | struct Node { method Node (line 16) | Node(T data_) : data(data_), next(nullptr) {} method Node (line 17) | Node() : next(nullptr) {} class LinkedQueue (line 21) | class LinkedQueue { method LinkedQueue (line 31) | LinkedQueue() = default; method LinkedQueue (line 33) | LinkedQueue(const LinkedQueue& other) = default; method LinkedQueue (line 34) | LinkedQueue& operator=(const LinkedQueue& rhs) = default; method LinkedQueue (line 35) | LinkedQueue(LinkedQueue&& other) = default; method LinkedQueue (line 36) | LinkedQueue& operator=(LinkedQueue&& rhs) = default; method enqueue (line 39) | void enqueue(T item) { method T (line 48) | T head() const { method dequeue (line 55) | void dequeue() { method traverse (line 68) | void traverse(UnaryFunc do_traverse) { FILE: c-cpp/09_queue/linked_queue_test.cc function main (line 4) | int main() { FILE: c-cpp/09_queue/list_queue/list_queue.c function list_queue (line 14) | list_queue *list_queue_create() function list_queue_destroy (line 30) | void list_queue_destroy(list_queue*queue) function list_queue_enqueue (line 48) | int list_queue_enqueue(list_queue *queue,int data) function list_queue_dequeue (line 81) | int list_queue_dequeue(list_queue *queue,int *data) function list_queue_dump (line 104) | void list_queue_dump(list_queue*queue) function main (line 128) | int main() FILE: c-cpp/09_queue/list_queue/list_queue.h type queue_node (line 12) | typedef struct _list_queue_node type list_queue (line 18) | typedef struct _list_queue FILE: c-cpp/09_queue/lock_free_queue.hpp class LockFreeQueue (line 12) | class LockFreeQueue { type node (line 17) | struct node { method tail (line 25) | tail(head.load()) {} method LockFreeQueue (line 26) | LockFreeQueue(const LockFreeQueue&) = delete; method LockFreeQueue (line 27) | LockFreeQueue(LockFreeQueue&& other) : head(other.head.load()), tail(o... method LockFreeQueue (line 31) | LockFreeQueue& operator=(const LockFreeQueue&) = delete; method LockFreeQueue (line 32) | LockFreeQueue& operator=(LockFreeQueue&& rhs) { method node (line 50) | node* pop_head() { method empty (line 60) | bool empty() const { method pop (line 63) | std::shared_ptr pop() { method push (line 73) | void push(value_type new_value) { FILE: c-cpp/09_queue/ring_queue.c type ring_queue (line 6) | struct ring_queue { function alloc_queue (line 12) | int alloc_queue(struct ring_queue* queue, int cap) function free_queue (line 28) | void free_queue(struct ring_queue *queue) function _valid_index (line 35) | int _valid_index(int curr, int step, int cap) function _next (line 40) | int _next(int curr, int cap) function is_empty (line 45) | bool is_empty(struct ring_queue *queue) function is_full (line 50) | bool is_full(struct ring_queue *queue) function enqueue (line 56) | int enqueue(struct ring_queue* queue, int elem) function dequeue (line 66) | int dequeue(struct ring_queue* queue, int *elem) function size (line 77) | int size(struct ring_queue* queue) function dump (line 86) | void dump(struct ring_queue* queue) function main (line 98) | int main() FILE: c-cpp/10_recursive/one_two_step.c function helper (line 14) | int helper(int n ,int *vlaue) function climbStaris (line 27) | int climbStaris(int n) function main (line 48) | int main() FILE: c-cpp/10_recursive/one_two_step.cc class SolutionOFOneTwoStep (line 4) | class SolutionOFOneTwoStep { type POLICY (line 9) | enum class POLICY { method recursive (line 15) | size_t recursive(size_t steps) { method nonrecursive (line 25) | size_t nonrecursive(size_t steps) { method debug (line 47) | static void debug() { function main (line 57) | int main() { FILE: c-cpp/11_sorts/sorts.c type array (line 5) | struct array { function dump (line 11) | void dump(struct array *array) function alloc (line 19) | void alloc(struct array *array) function bubble_sort (line 24) | void bubble_sort(struct array *array) function bubble_sort_test (line 48) | void bubble_sort_test() function insertion_sort (line 62) | void insertion_sort(struct array *array) function insertion_sort_test (line 82) | void insertion_sort_test() function selection_sort (line 96) | void selection_sort(struct array *array) function selection_sort_test (line 119) | void selection_sort_test() function main (line 133) | int main() FILE: c-cpp/11_sorts/sorts.cpp function swap (line 4) | void swap(int *xp, int *yp) function selectionSort (line 11) | void selectionSort(int arr[], int n) function printArray (line 30) | void printArray(int arr[], int size) function main (line 39) | int main() FILE: c-cpp/11_sorts/sorts.hpp function bubble_sort (line 13) | void bubble_sort(BidirIt first, BidirIt last, BinaryPred comp = BinaryPr... function insertion_sort (line 29) | void insertion_sort(BidirIt first, BidirIt last, BinaryPred comp = Binar... function selection_sort (line 43) | void selection_sort(BidirIt first, BidirIt last, BinaryPred comp = Binar... function bubble_down_sort (line 60) | void bubble_down_sort(FrwdIt first, FrwdIt last, BinaryPred comp = Binar... function shell_sort (line 73) | void shell_sort(BidirIt first, BidirIt last, BinaryPred comp = BinaryPre... FILE: c-cpp/11_sorts/sorts_jinshaohui.c function bubble_sort (line 20) | void bubble_sort(int a[],int size) function insert_sort (line 52) | void insert_sort(int a[],int size) function select_sort (line 75) | void select_sort(int a[],int size) function dump (line 100) | void dump(int a[],int size) function main (line 113) | int main() FILE: c-cpp/11_sorts/sorts_test.cc function main (line 6) | int main() { FILE: c-cpp/12_sorts/merge_sort.c function dump (line 6) | void dump(int *arr, int size) function __merge (line 14) | void __merge(int *arr, int p, int q, int r) function __merge_sort (line 43) | void __merge_sort(int *arr, int p, int r) function merge_sort (line 56) | void merge_sort(int *arr, int size) function merge_verify (line 61) | void merge_verify() function merge_sort_test (line 70) | void merge_sort_test() function main (line 79) | int main() FILE: c-cpp/12_sorts/merge_sort.hpp type detail (line 13) | namespace detail { function OutputIt (line 16) | OutputIt merge(InputIt1 first1, InputIt1 last1, function merge_sort (line 38) | void merge_sort(FrwdIt first, FrwdIt last, BinaryPred comp = BinaryPred(... function inplace_merge_sort (line 52) | void inplace_merge_sort(BidirIt first, BidirIt last, BinaryPred comp = B... FILE: c-cpp/12_sorts/merge_sort_test.cc function main (line 9) | int main() { FILE: c-cpp/12_sorts/my12_sorts/merge_sort.c function merge_sentry (line 16) | void merge_sentry(int a[],int middle,int left,int right) function merge (line 62) | void merge(int a[],int middle,int left,int right) function merge_sort (line 114) | void merge_sort(int a[],int left,int right) function dump (line 133) | void dump(int a[],int size) function main (line 150) | int main() FILE: c-cpp/12_sorts/my12_sorts/quick_sort.c function partition2 (line 21) | int partition2(int a[],int left,int right) function partition (line 46) | int partition(int a[],int left,int right) function quick_sort (line 77) | void quick_sort(int a[],int left,int right) function dump (line 92) | void dump(int a[],int size) function helper (line 105) | int helper(int a[],int left,int right,int k) function findKthlagest (line 124) | int findKthlagest(int a[],int size,int k) function main (line 130) | int main() FILE: c-cpp/12_sorts/quick_sort.c function dump (line 6) | void dump(int *arr, int size) function swap (line 14) | void swap(int *a, int *b) function partition (line 21) | int partition(int *arr, int p, int r) function __quick_sort (line 43) | void __quick_sort(int *arr, int p, int r) function quick_sort (line 55) | void quick_sort(int *arr, int size) function quick_sort_test (line 60) | void quick_sort_test() function main (line 69) | int main() FILE: c-cpp/12_sorts/quick_sort.hpp type detail (line 13) | namespace detail { function T (line 15) | const T& median(const T& a, const T& b, const T& c, Compare comp = Com... function T (line 28) | const T& iter_median(Iter a, Iter b, Iter c, Compare comp = Compare()) { function inplace_partition (line 35) | std::pair inplace_partition(BidirIt first, function quick_sort (line 61) | void quick_sort(BidirIt first, BidirIt last, Compare comp = Compare()) { FILE: c-cpp/12_sorts/quick_sort_test.cc function test_quick_sort (line 11) | void test_quick_sort(std::vector test_data) { function main (line 18) | int main() { FILE: c-cpp/13_sorts/bucket_sort.hpp function bucket_sort (line 17) | void bucket_sort(IterT first, IterT last, Compare comp = Compare()) { FILE: c-cpp/13_sorts/bucket_sort_test.cc function test_bucket_sort (line 15) | void test_bucket_sort(Container cont, Compare comp = Compare()) { function main (line 22) | int main() { FILE: c-cpp/13_sorts/counting_sort.hpp function counting_sort (line 15) | void counting_sort(IterT first, IterT last) { FILE: c-cpp/13_sorts/counting_sort_test.cc function test_counting_sort (line 13) | void test_counting_sort(Container cont) { function main (line 20) | int main() { FILE: c-cpp/13_sorts/sort.c function dump (line 14) | void dump(int a[],int size) function count_sort (line 32) | void count_sort(int a[],int size) function count_sort_test (line 82) | int count_sort_test() function radix_sort (line 93) | void radix_sort(int a[],int size,int num_count) function radix_sort_test (line 152) | void radix_sort_test() type barrel (line 161) | struct barrel { function partition (line 165) | int partition(int a[],int left,int right) function quick_sort (line 196) | void quick_sort(int a[],int left,int right) function bucket_sort (line 211) | void bucket_sort(int data[], int size) function bucket_sort_test (line 250) | void bucket_sort_test() function main (line 260) | int main() FILE: c-cpp/14_sorts/counting_sort.c function dump (line 6) | void dump(int *arr, int size) function counting_sort (line 15) | void counting_sort(int *arr, int size) function counting_sort_test (line 54) | void counting_sort_test() function main (line 62) | int main() FILE: c-cpp/15_bsearch/binary_search.c function binary_search_r (line 8) | int binary_search_r(int *arr, int size, int val) function binary_search_i (line 32) | int binary_search_i(int *arr, int size, int val) function iteratioin_test (line 50) | void iteratioin_test(bs binary_search) function main (line 87) | int main() FILE: c-cpp/15_bsearch/bsearch.hpp function IterT (line 17) | IterT bsearch(IterT first, FILE: c-cpp/15_bsearch/bsearch_c/bsearch.c function mybsearch (line 13) | int mybsearch(int a[],int size,int value) function helper (line 41) | int helper(int a[], int left,int right,int value) function mybsearch_2 (line 66) | int mybsearch_2(int a[],int size,int value) function main (line 72) | int main() FILE: c-cpp/15_bsearch/bsearch_c/sqrt.c function mybsearch (line 16) | double mybsearch(double num) function main (line 43) | int main() FILE: c-cpp/15_bsearch/bsearch_test.cc function test_bsearch (line 11) | void test_bsearch(const VecT& test, T target) { function main (line 16) | int main() { FILE: c-cpp/16_bsearch/bsearch.c function mybsearch_1 (line 21) | int mybsearch_1(int a[],int size,int value) function mybsearch_2 (line 57) | int mybsearch_2(int a[],int size,int value) function mybsearch_3 (line 92) | int mybsearch_3(int a[],int size,int value) function mybsearch_4 (line 125) | int mybsearch_4(int a[],int size,int value) function main (line 157) | int main() FILE: c-cpp/16_bsearch/bsearch_variant.c function binary_search (line 7) | int binary_search(int *arr, int size, int val) function binary_search_first (line 38) | int binary_search_first(int *arr, int size, int val) function binary_search_last (line 59) | int binary_search_last(int *arr, int size, int val) function binary_search_first_r (line 78) | int binary_search_first_r(int *arr, int size, int val) function binary_search_last_r (line 108) | int binary_search_last_r(int *arr, int size, int val) function binary_search_first_bigger (line 140) | int binary_search_first_bigger(int *arr, int size, int val) function binary_search_first_bigger_r (line 159) | int binary_search_first_bigger_r(int *arr, int size, int val) function binary_search_last_smaller (line 182) | int binary_search_last_smaller(int *arr, int size, int val) function binary_search_last_smaller_r (line 201) | int binary_search_last_smaller_r(int *arr, int size, int val) function main (line 224) | int main() FILE: c-cpp/16_bsearch/bsearch_varients.hpp type BsearchPolicy (line 11) | enum class BsearchPolicy { UNSPECIFIED, FIRST, LAST, FIRST_NOT_LESS, LAS... function IterT (line 19) | IterT bsearch(IterT first, function IterT (line 82) | IterT bsearch(IterT first, FILE: c-cpp/16_bsearch/bsearch_varients_test.cc function test_bsearch (line 11) | void test_bsearch(const VecT& test, function main (line 18) | int main() { FILE: c-cpp/17_skiplist/SkipList.cpp class CNode (line 33) | class CNode class CSkipList (line 76) | class CSkipList function main (line 117) | int main() function CNode (line 170) | CNode** CNode::GetIdxList() function CNode (line 211) | CNode* CSkipList::Find(int v) function GetRandom (line 345) | int GetRandom() FILE: c-cpp/17_skiplist/skiplist.c type node (line 11) | struct node { type skip_list (line 17) | struct skip_list { function node_init (line 23) | void node_init(struct node* node) function skip_list_init (line 28) | void skip_list_init(struct skip_list* sl) function random_init (line 35) | void random_init() function random_level (line 46) | int random_level(void) function random_level_test (line 59) | void random_level_test() function insert (line 68) | void insert(struct skip_list *sl, int val) type node (line 105) | struct node type skip_list (line 105) | struct skip_list type node (line 107) | struct node function delete (line 122) | void delete(struct skip_list* sl, int val) function print_sl (line 170) | void print_sl(struct skip_list* sl) function main (line 189) | int main() FILE: c-cpp/17_skiplist/skiplist.hpp class skiplist (line 18) | class skiplist { type InternalNode (line 26) | struct InternalNode { method InternalNode (line 31) | InternalNode(const key_type& k, const size_type lv) method InternalNode (line 33) | InternalNode(const value_type& v, const size_type lv) method skiplist (line 53) | skiplist() { method skiplist (line 60) | skiplist(std::initializer_list init) : skiplist() { method skiplist (line 65) | skiplist(const skiplist& other) = delete; method skiplist (line 66) | skiplist(skiplist&& other) : method skiplist (line 86) | skiplist& operator=(const skiplist& other) = delete; method skiplist (line 87) | skiplist& operator=(skiplist&& other) = delete; method size_type (line 90) | inline size_type get_random_level() const { method size_type (line 93) | static size_type get_node_level(const node_type* node) { method node_type (line 96) | static node_type* make_node(const value_type& v, const size_type lv) { method node_type (line 103) | node_type* get_first_equal(const value_type& v) const { method get_predecessors (line 120) | std::vector get_predecessors(const value_type& v) const { method value_type (line 135) | const value_type& find(const value_type& target) { method insert (line 143) | void insert(const value_type& value) { method erase (line 152) | void erase(const value_type& value) { method print (line 163) | void print(std::ostream& os) const { FILE: c-cpp/17_skiplist/skiplist_c/skiplist.c function node (line 16) | node* skip_list_create_node(int level,int key,int value) function skiplist (line 32) | skiplist * skip_list_create(int max_level) function skip_list_destory (line 55) | void skip_list_destory(skiplist * list) function skip_list_level (line 77) | int skip_list_level(skiplist * list) function skip_list_insert (line 91) | int skip_list_insert(skiplist *list,int key,int value) function skip_list_delete (line 158) | int skip_list_delete(skiplist * list, int key ,int *value) function skip_list_search (line 228) | int skip_list_search(skiplist *list,int key,int *value) function skip_list_dump (line 255) | void skip_list_dump(skiplist *list) function main (line 275) | int main() FILE: c-cpp/17_skiplist/skiplist_c/skiplist.h type node (line 12) | typedef struct _node type skiplist (line 20) | typedef struct _skiplist FILE: c-cpp/17_skiplist/skiplist_test.cc function main (line 10) | int main() { FILE: c-cpp/17_skiplist/skiplist_tr.hpp type skiplist_detail (line 24) | namespace skiplist_detail { type InternalNode (line 26) | struct InternalNode { method InternalNode (line 32) | InternalNode() = delete; method InternalNode (line 33) | explicit InternalNode(const Key& k) : key(k) {} class random_level (line 37) | class random_level { method random_level (line 44) | random_level(IntType max_level, double prob) : dist(max_level - 1, p... method IntType (line 45) | inline IntType operator()() const { return dist(gen); } type erase_policy (line 49) | enum class erase_policy { ALL, SINGLE } class skiplist (line 54) | class skiplist { method skiplist (line 75) | skiplist() : rl_(max_lv_, prob_) { method skiplist (line 78) | explicit skiplist(const size_type max_lv, const double prob = 0.5) method skiplist (line 82) | skiplist(skiplist&& other) = default; method skiplist (line 83) | skiplist& operator=(skiplist&& other) = default; method skiplist (line 86) | skiplist(InputIt first, InputIt last) : skiplist() { method skiplist (line 94) | skiplist(std::initializer_list init) : skiplist(init.begin... method skiplist (line 97) | skiplist(const skiplist&) = delete; method skiplist (line 98) | skiplist& operator=(const skiplist&) = delete; method init_internally (line 101) | void init_internally() { method const_iterator (line 129) | const_iterator find_helper(const hash_type& key) const { method find_predecessors (line 163) | std::vector find_predecessors(const hash_type& key, const si... method size_type (line 210) | size_type size() const { method empty (line 213) | bool empty() const { method iterator (line 216) | iterator begin() { method const_iterator (line 219) | const_iterator begin() const { method const_iterator (line 222) | const_iterator cbegin() const { method iterator (line 225) | iterator end() { method const_iterator (line 228) | const_iterator end() const { method const_iterator (line 231) | const_iterator cend() const { method grow (line 234) | void grow(const size_type new_max_lv) { method grow (line 258) | void grow() { method size_type (line 261) | size_type capability() const { method const_iterator (line 266) | const_iterator find(const value_type& target) const { method insert (line 274) | void insert(const value_type& target) { method erase (line 311) | void erase(const value_type& target, FILE: c-cpp/17_skiplist/skiplist_tr_test.cc function main (line 12) | int main() { FILE: c-cpp/18_hashtable/hash_map.cc class hash_map (line 16) | class hash_map { method hash_map (line 28) | hash_map() { method empty (line 33) | bool empty() const { return empty_; } method size_type (line 34) | size_type size() const { return size_; } method size_type (line 35) | size_type max_size() const { return primes_[size_level_]; } method mapped_type (line 38) | mapped_type& operator[](const key_type& key) { method load_factor (line 48) | double load_factor() const { return static_cast(size()) / max_... method max_load_factor (line 49) | double max_load_factor() const { return max_load_factor_; } method expand (line 50) | void expand() const { method size_type (line 64) | size_type find_hash(const key_type& key) const { method construct_new_on_position (line 73) | bool construct_new_on_position(const size_type pos, const key_type& ke... function main (line 92) | int main() { FILE: c-cpp/18_hashtable/hashtable.c type hash_table (line 13) | struct hash_table { function hash_table_reset (line 18) | void hash_table_reset(struct hash_table *table) function hash_function (line 27) | unsigned int hash_function(unsigned long value) function dump_hash_table (line 32) | void dump_hash_table(struct hash_table *table) function hash_function_test (line 46) | void hash_function_test() function next_probe (line 58) | unsigned int next_probe(unsigned int prev_key) function next_probe_test (line 63) | void next_probe_test() function hash_table_add (line 76) | void hash_table_add(struct hash_table *table, unsigned long value) function hash_table_slot (line 90) | unsigned int hash_table_slot(struct hash_table *table, unsigned long value) function hash_table_find (line 104) | bool hash_table_find(struct hash_table *table, unsigned long value) function hash_table_del (line 109) | void hash_table_del(struct hash_table *table, unsigned long value) function hash_table_add_test (line 134) | void hash_table_add_test() function hash_table_del_test1 (line 147) | void hash_table_del_test1() function hash_table_del_test2 (line 162) | void hash_table_del_test2() function main (line 178) | int main() FILE: c-cpp/18_hashtable/listhash/listhash.c function hashtab (line 18) | hashtab * hashtab_create(int size,hash_key_func hash_value, function hashtab_destory (line 55) | void hashtab_destory(hashtab *h) function hashtab_insert (line 83) | int hashtab_insert(hashtab * h,void *key,void *data) function hashtab_node (line 136) | hashtab_node *hashtab_delete(hashtab *h, void *key) function hashtab_dump (line 200) | void hashtab_dump(hashtab *h) type test_node (line 225) | struct test_node function siample_hash (line 231) | unsigned int siample_hash(const char *str) function hashtab_hvalue (line 244) | int hashtab_hvalue(hashtab *h,const void *key) function hashtab_keycmp (line 249) | int hashtab_keycmp(hashtab *h,const void *key1,const void *key2) function hashtab_node_free (line 254) | void hashtab_node_free(hashtab_node*node) function main (line 264) | int main () FILE: c-cpp/18_hashtable/listhash/listhash.h type hashtab_node (line 16) | typedef struct _hashtab_node type hashtab (line 23) | typedef struct _hashtab type _hashtab (line 36) | struct _hashtab type _hashtab (line 37) | struct _hashtab FILE: c-cpp/19_Dlisthash/Dlist.h type list_head (line 12) | struct list_head { function INIT_LIST_HEAD (line 24) | static inline void INIT_LIST_HEAD(struct list_head *list) function __list_add (line 31) | static inline void __list_add(struct list_head *new, function list_add (line 42) | static inline void list_add(struct list_head *new, struct list_head *head) function list_add_tail (line 48) | static inline void list_add_tail(struct list_head *new, struct list_head... function __list_del (line 54) | static inline void __list_del(struct list_head * prev, struct list_head ... function list_del (line 61) | static inline void list_del(struct list_head *entry) function __list_del_entry (line 67) | static inline void __list_del_entry(struct list_head *entry) function list_del_init (line 73) | static inline void list_del_init(struct list_head *entry) function list_replace (line 80) | static inline void list_replace(struct list_head *old, function list_empty (line 90) | static inline int list_empty(const struct list_head *head) FILE: c-cpp/19_Dlisthash/LinkedHashMap.c function LinkedHashMap (line 16) | LinkedHashMap *LinkedHashMap_Create(int size,int nel_max, function LinkedHashMap_destory (line 56) | void LinkedHashMap_destory(LinkedHashMap *h) function LinkedHashMap_insert (line 84) | int LinkedHashMap_insert(LinkedHashMap *h,void *key,void *data) function LiskedHashMapNode (line 152) | LiskedHashMapNode * LinkedHashMap_delete(LinkedHashMap *h,void *key) function LinkedHashMap__dump (line 218) | void LinkedHashMap__dump(LinkedHashMap *h) type test_node (line 257) | struct test_node function siample_hash (line 263) | unsigned int siample_hash(const char *str) function hashtab_hvalue (line 276) | int hashtab_hvalue(LinkedHashMap *h,const void *key) function hashtab_keycmp (line 281) | int hashtab_keycmp(LinkedHashMap *h,const void *key1,const void *key2) function hashtab_node_free (line 286) | void hashtab_node_free(LiskedHashMapNode *node,int flg) function main (line 300) | int main () FILE: c-cpp/19_Dlisthash/LinkedHashMap.h type LiskedHashMapNode (line 14) | typedef struct _lisked_hash_map_node type LinkedHashMap (line 22) | typedef struct _lisked_hash_map type _lisked_hash_map (line 35) | struct _lisked_hash_map type _lisked_hash_map (line 36) | struct _lisked_hash_map FILE: c-cpp/23_binarytree/binarytree.c type node (line 11) | struct node { type binary_tree (line 15) | struct binary_tree { function init_binary_tree (line 22) | void init_binary_tree(struct binary_tree *tree) type node (line 31) | struct node type node (line 33) | struct node type node (line 35) | struct node function fake_a_tree (line 43) | void fake_a_tree(struct binary_tree* tree) function _in_order (line 57) | void _in_order(struct binary_tree* tree, int index) function in_order (line 71) | void in_order(struct binary_tree* tree) function main (line 76) | int main() FILE: c-cpp/23_binarytree/tree/binarytree.c type Tnode (line 15) | typedef struct _treenode function binarytree_create (line 22) | void binarytree_create(Tree **Root) function binarytree_destory (line 51) | void binarytree_destory(Tree *root) function binarytree_preorder (line 64) | void binarytree_preorder(Tree *root) function binarytree_inorder (line 76) | void binarytree_inorder(Tree *root) function binarytree_postorder (line 88) | void binarytree_postorder(Tree *root) function binarytree_levelorder (line 100) | void binarytree_levelorder(Tree * root) function binarytree_printfleaf (line 135) | void binarytree_printfleaf(Tree *root) function binarytree_getleafnum (line 153) | int binarytree_getleafnum(Tree*root) function binarytree_gethigh (line 169) | int binarytree_gethigh(Tree *root) function main (line 185) | int main() FILE: c-cpp/23_binarytree/tree/list_queue.c function list_queue (line 14) | list_queue *list_queue_create() function list_queue_enqueue (line 30) | int list_queue_enqueue(list_queue *queue,void *data) function list_queue_dequeue (line 63) | int list_queue_dequeue(list_queue *queue,void **data) FILE: c-cpp/23_binarytree/tree/list_queue.h type queue_node (line 12) | typedef struct _list_queue_node type list_queue (line 18) | typedef struct _list_queue FILE: c-cpp/24_binarysearchtree/binary_search_tree.cpp type treeNode (line 16) | struct treeNode class binarySearchTree (line 23) | class binarySearchTree method binarySearchTree (line 29) | binarySearchTree() : num(0) method find (line 36) | bool find(DataType it, treeNode *root) method find_data (line 49) | bool find_data(DataType it) method DataType (line 64) | DataType get_max() method DataType (line 75) | DataType get_min() method insert_data (line 86) | void insert_data(DataType it) method DataType (line 116) | DataType get_prenode(DataType it) method DataType (line 140) | DataType get_postnode(DataType it) method mid_order (line 165) | void mid_order(treeNode *rt) method order (line 174) | void order() method get_high (line 181) | int get_high(treeNode *rt) method high (line 192) | int high() method delet (line 199) | void delet(DataType it) function main (line 249) | int main() FILE: c-cpp/24_binarysearchtree/binarysearchtree.c function bstree (line 15) | bstree *bstree_create(compare_fuc compare,destory_fuc destory) function bstree_node (line 32) | bstree_node *bstree_search(bstree *tree,mytype data) function bstree_insert (line 63) | int bstree_insert(bstree * tree, mytype data) function bstree_delete (line 122) | int bstree_delete(bstree *tree,mytype data) function bstree_destory_node (line 211) | void bstree_destory_node(bstree *tree,bstree_node *root) function bstree_destory (line 224) | void bstree_destory(bstree *tree) function bstree_inorder_node (line 232) | void bstree_inorder_node(bstree_node *root) function bstree_dump (line 246) | void bstree_dump(bstree *tree) function bstree_compare (line 259) | int bstree_compare(mytype key1,mytype key2) function main (line 275) | int main() FILE: c-cpp/24_binarysearchtree/binarysearchtree.h type mytype (line 10) | typedef int mytype; type bstree_node (line 12) | typedef struct _bstree_node type bstree (line 19) | typedef struct _bstree FILE: c-cpp/24_binarysearchtree/bst.c type child_dir (line 7) | enum child_dir { type node (line 13) | struct node { type root (line 19) | struct root { function dump (line 23) | void dump(struct node *node, int level, enum child_dir dir) type node (line 41) | struct node type root (line 41) | struct root type node (line 43) | struct node type node (line 57) | struct node type node (line 59) | struct node type node (line 61) | struct node function insert (line 68) | void insert(struct root *root, struct node *new) type node (line 100) | struct node type root (line 100) | struct root type node (line 102) | struct node type node (line 103) | struct node type node (line 119) | struct node function insert_test (line 137) | void insert_test() function delete_test (line 163) | void delete_test() function main (line 192) | int main() FILE: c-cpp/24_tree/Trie.c type Status (line 16) | typedef int Status; type Trie (line 18) | typedef struct Node { function Init (line 24) | void Init(TriePtr *T) function Insert (line 31) | void Insert(TriePtr T, char *str) { function Status (line 55) | Status Search(TriePtr T, char *str) { function main (line 79) | int main(int argc, char const *argv[]) FILE: c-cpp/24_tree/binarysearchtree.c type Status (line 15) | typedef int Status; type ElemType (line 16) | typedef char ElemType; type BTree (line 18) | typedef struct node { function Status (line 24) | Status Insert(BTreePtr *T, ElemType e) { function Status (line 62) | Status Delete(BTreePtr T, ElemType e) { function Status (line 128) | Status Find(BTreePtr T, ElemType e) { function ElemType (line 150) | ElemType FindMax(BTreePtr T) { function ElemType (line 162) | ElemType FindMin(BTreePtr T) { function PreOrderTraverse (line 173) | void PreOrderTraverse(BTreePtr T)//前序遍历二叉树 function DestroyTree (line 186) | void DestroyTree(BTreePtr T) { function main (line 205) | int main(int argc, char const *argv[]) FILE: c-cpp/28_heap/heap.c type element (line 11) | struct element { type heap (line 15) | struct heap { function init_heap (line 22) | void init_heap(struct heap *heap) function dump_heap (line 31) | void dump_heap(struct heap *heap, int index) function dump (line 55) | void dump(struct heap *heap, int elements) type element (line 64) | struct element type element (line 66) | struct element type element (line 68) | struct element function fake_a_heap (line 76) | void fake_a_heap(struct heap *heap) function swap (line 90) | void swap(struct heap *heap, int i, int j) function heapify (line 99) | void heapify(struct heap *heap, int parent) function build_heap (line 123) | void build_heap(struct heap *heap) function heap_sort (line 131) | int heap_sort(struct heap *heap) function main (line 144) | int main() FILE: c-cpp/30_Graph/graph.c type vertex (line 7) | struct vertex type vertex_adjs (line 8) | struct vertex_adjs { type vertex (line 13) | struct vertex { type graph (line 19) | struct graph { function init_graph (line 23) | void init_graph(struct graph *graph) type vertex (line 31) | struct vertex type vertex (line 33) | struct vertex type vertex (line 35) | struct vertex type vertex_adjs (line 45) | struct vertex_adjs type vertex (line 45) | struct vertex type vertex_adjs (line 47) | struct vertex_adjs type vertex_adjs (line 49) | struct vertex_adjs function insert_adj (line 59) | void insert_adj(struct vertex *v, struct vertex *adj) function dump_raw (line 71) | void dump_raw(struct graph *graph) function fake_a_graph (line 101) | void fake_a_graph(struct graph *graph) function main (line 131) | int main() FILE: c-cpp/bst.c type child_dir (line 7) | enum child_dir { type node (line 13) | struct node { type root (line 19) | struct root { function dump (line 23) | void dump(struct node *node, int level, enum child_dir dir) type node (line 41) | struct node type root (line 41) | struct root type node (line 43) | struct node type node (line 57) | struct node type node (line 59) | struct node type node (line 61) | struct node function insert (line 68) | void insert(struct root *root, struct node *new) type node (line 100) | struct node type root (line 100) | struct root type node (line 102) | struct node type node (line 103) | struct node type node (line 119) | struct node function insert_test (line 137) | void insert_test() function delete_test (line 163) | void delete_test() function main (line 192) | int main() FILE: csharp/05-array/Array.cs class Array (line 5) | public sealed class Array where T : IComparable method Array (line 11) | public Array(int capacity) method Insert (line 22) | public void Insert(int index, T newElem) method Find (line 46) | public T Find(int index) method IndexOf (line 57) | public int IndexOf(T val) method Delete (line 74) | public bool Delete(int index) method Delete (line 96) | public bool Delete(T val) method Clear (line 110) | public void Clear() FILE: csharp/06-linkedlist/LRUWithArray.cs class LRUWithArray (line 8) | public class LRUWithArray method LRUWithArray (line 12) | public LRUWithArray(int capacity) method Set (line 20) | public void Set(int val) FILE: csharp/06-linkedlist/LRUWithLinkedList.cs class LRUWithLinkedList (line 6) | public class LRUWithLinkedList method LRUWithLinkedList (line 14) | public LRUWithLinkedList(int capacity = 10) method Set (line 25) | public void Set(int val) FILE: csharp/06-linkedlist/SingleLinkedList.cs class SingleLinkedList (line 9) | public class SingleLinkedList where T : IComparable method SingleLinkedList (line 11) | public SingleLinkedList() method SingleLinkedList (line 16) | public SingleLinkedList(params T[] list) method Insert (line 38) | public ListNode Insert(int position, T newElem) method Find (line 63) | public ListNode Find(int position) method Find (line 82) | public ListNode Find(T elem) method Delete (line 96) | public ListNode Delete(T value) method Delete (line 114) | public ListNode Delete(int position) method Clear (line 137) | public void Clear() class ListNode (line 152) | public class ListNode method ListNode (line 154) | public ListNode(T value) FILE: csharp/07-linkedlist/_07_linkedlist/SingleLinkedListAlgo.cs class SingleLinkedListAlgo (line 15) | public class SingleLinkedListAlgo : SingleLinkedList where T : ICo... method SingleLinkedListAlgo (line 17) | public SingleLinkedListAlgo(params T[] list) : base(list) method Reverse (line 24) | public void Reverse() method HasCycle (line 53) | public bool HasCycle() method Merge (line 76) | public SingleLinkedListAlgo Merge(SingleLinkedListAlgo listAlgo) method RemoveNthNodeFromEnd (line 124) | public void RemoveNthNodeFromEnd(int n) method FindMiddleNode (line 155) | public ListNode FindMiddleNode() FILE: csharp/08-stack/algo08_stack/ArrayStack.cs class ArrayStack (line 5) | public class ArrayStack method ArrayStack (line 13) | public ArrayStack(int capacity) method Push (line 22) | public void Push(T val) method Pop (line 31) | public T Pop() FILE: csharp/08-stack/algo08_stack/LinkedStack.cs class LinkedStack (line 5) | public class LinkedStack method Push (line 11) | public void Push(T val) method Pop (line 20) | public T Pop() method Clear (line 32) | public void Clear() class StackListNode (line 41) | public class StackListNode method StackListNode (line 43) | public StackListNode(T nodeValue) FILE: csharp/08-stack/algo08_stack/LinkedStackBrowser.cs class LinkedStackBrowser (line 6) | public class LinkedStackBrowser method Open (line 11) | public void Open(string url) method Backward (line 18) | public string Backward() method Forward (line 29) | public string Forward() FILE: csharp/Tests/_05_array_tests/Array.Tests.cs class ArrayTests (line 8) | public class ArrayTests method ArrayTests (line 13) | public ArrayTests(ITestOutputHelper output) method PrintList (line 19) | private void PrintList() method Length_Equal_1_After_InsertOneElement (line 28) | [Fact] method Insert_ThrowIndexOutOfRangeException_When_Index_GreaterThan_Length (line 35) | [Fact] method Insert_ThrowIndexOutOfRangeException_When_Index_LessThan_Zero (line 43) | [Fact] method Insert_ThrowIndexOutOfRangeException_When_List_Is_Full (line 50) | [Fact] method Delete_ThrowIndexOutOfRangeException_When_Index_LessThan_Zero (line 70) | [Fact] method Delete_ThrowIndexOutOfRangeException_When_Index_GreaterThan_Length (line 77) | [Fact] method Delete_First_Element_Success (line 86) | [Fact] method Delete_Last_Element_Success (line 97) | [Fact] method Delete_Middle_Element (line 109) | [Fact] method Find_ThrowsIndexOutOfRangeException_When_Index_LessThan_Zero (line 121) | [Fact] method Find_ThrowsIndexOutOfRangeException_When_Index_GreaterThan_Length (line 133) | [Fact] method Find_Last_Position_Return_33 (line 145) | [Fact] method Find_First_Element_Return_11 (line 158) | [Fact] method IndexOf_Return_Negative_1_When_Element_Not_Exist (line 171) | [Fact] method IndexOf_Return_First_Index (line 184) | [Fact] method IndexOf_Return_Last_Index (line 197) | [Fact] method Clear_Then_Length_Equal_Zero (line 210) | [Fact] FILE: csharp/Tests/_06_linkedlist_tests/BaseLinkedListTests.cs class BaseLinkedListTests (line 6) | public class BaseLinkedListTests method PrintLinkedList (line 8) | protected void PrintLinkedList (SingleLinkedList list) where T :... FILE: csharp/Tests/_06_linkedlist_tests/LRUWithArray.Tests.cs class LRUWithArrayTests (line 8) | public class LRUWithArrayTests method LRUWithArrayTests (line 12) | public LRUWithArrayTests(ITestOutputHelper output) method PrintList (line 17) | private void PrintList(Array list) method LRU_Set_Value_When_Not_Existed (line 26) | [Fact] method LRU_Set_Value_When_Existed (line 45) | [Fact] method LRU_Set_Value_When_Full (line 63) | [Fact] FILE: csharp/Tests/_06_linkedlist_tests/LRUWithLinkedList.Tests.cs class LRUWithLinkedListTests (line 7) | public class LRUWithLinkedListTests : BaseLinkedListTests method LRU_Set_Value_When_Not_Existed (line 9) | [Fact] method LRU_Set_Value_When_Existed (line 27) | [Fact] method LRU_Set_Value_When_Full (line 45) | [Fact] FILE: csharp/Tests/_06_linkedlist_tests/SingleLinkedList.Tests.cs class SingleLinkedListTests (line 8) | public class SingleLinkedListTests : BaseLinkedListTests method Insert_3_Elements_Return_Length_3 (line 10) | [Fact] method Insert_Some_Elements_Then_Verify_First (line 20) | [Fact] method Insert_Some_Elements_Then_Verify_Last (line 28) | [Fact] method Find_Return_Null_When_Position_LessThan_1 (line 36) | [Fact] method Find_Return_Null_When_Position_GreaterThan_Length (line 45) | [Fact] method Find_Return_Correct_When_Position_Valid (line 54) | [Fact] method Delete_Return_Null_When_Position_LessThan_1 (line 63) | [Fact] method Delete_Return_Null_When_Position_GreaterThan_Length (line 72) | [Fact] method Delete_By_Value_Success_When_Element_Exist (line 81) | [Fact] method Delete_By_Value_Success_When_Element_Not_Exist (line 95) | [Fact] method Delete_By_Value_Success_When_Delete_First (line 109) | [Fact] method Delete_By_Value_Success_When_Delete_Last (line 123) | [Fact] method Delete_Success_When_Position_Valid (line 137) | [Fact] method Clear_Length_Equal_0 (line 151) | [Fact] method Clear_First_Is_Null (line 161) | [Fact] FILE: csharp/Tests/_07_linkedlist_tests/SingleLinkedListAlgo.Tests.cs class SingleLinkedListAlgoTests (line 9) | public class SingleLinkedListAlgoTests : BaseLinkedListTests method Reverse_When_List_Is_Empty (line 11) | [Fact] method Reverse_When_List_Has_Many_Elements (line 23) | [Fact] method HasCycle_List_Empty (line 36) | [Fact] method HasCycle_False_When_List_Length_1 (line 47) | [Fact] method HasCycle_False_When_List_Length_2 (line 57) | [Fact] method HasCycle_True_When_List_Length_2 (line 67) | [Fact] method HasCycle_False (line 82) | [Fact] method HasCycle_True (line 93) | [Fact] method Merge (line 116) | [Fact] method Remove_2th_Node_From_End (line 129) | [Fact] method FindMiddleNode (line 140) | [Fact] FILE: csharp/Tests/algo08_stack_tests/ArrayStack.Tests.cs class ArrayStackTests (line 8) | public class ArrayStackTests method ArrayStackTests (line 12) | public ArrayStackTests(ITestOutputHelper output) method PrintStackArray (line 17) | private void PrintStackArray(ArrayStack list) method Push_3_Elements_Then_Length_Equal_3 (line 28) | [Fact] method Push_Throw_InvalidOperationException_When_Stack_Full (line 41) | [Fact] method Pop_Throw_InvalidOperationException_When_Stack_Empty (line 57) | [Fact] method Pop_Valid_When_Stack_Not_Empty (line 68) | [Fact] FILE: csharp/Tests/algo08_stack_tests/LinkedStack.Tests.cs class LinkedStackTests (line 8) | public class LinkedStackTests method LinkedStackTests (line 12) | public LinkedStackTests(ITestOutputHelper output) method PrintStackLinkedList (line 17) | private void PrintStackLinkedList(LinkedStack list) method Push_3_Elements_Then_Length_Equal_3 (line 28) | [Fact] method Pop_Throw_InvalidOperationException_When_Stack_Empty (line 41) | [Fact] method Pop_Valid_When_Stack_Not_Empty (line 52) | [Fact] FILE: csharp/Tests/algo08_stack_tests/LinkedStackBrowser.Tests.cs class LinkedStackBrowserTests (line 7) | public class LinkedStackBrowserTests method LinkedStackBrowserTests (line 11) | public LinkedStackBrowserTests(ITestOutputHelper output) method Browser_Open_4_Links_Back_2_Return_Right_Link (line 16) | [Fact] method Browser_Open_4_Links_Back_4_Return_Empty (line 31) | [Fact] method Browser_Forward_Before_End (line 49) | [Fact] method Browser_Forward_Until_End (line 68) | [Fact] method Browser_Backward_And_Open_New_Then_Cannot_Forward (line 89) | [Fact] FILE: go/05_array/array.go type Array (line 15) | type Array struct method Len (line 31) | func (this *Array) Len() uint { method isIndexOutOfRange (line 36) | func (this *Array) isIndexOutOfRange(index uint) bool { method Find (line 44) | func (this *Array) Find(index uint) (int, error) { method Insert (line 52) | func (this *Array) Insert(index uint, v int) error { method InsertToTail (line 68) | func (this *Array) InsertToTail(v int) error { method Delete (line 73) | func (this *Array) Delete(index uint) (int, error) { method Print (line 86) | func (this *Array) Print() { function NewArray (line 21) | func NewArray(capacity uint) *Array { FILE: go/05_array/array_test.go function TestInsert (line 7) | func TestInsert(t *testing.T) { function TestDelete (line 25) | func TestDelete(t *testing.T) { function TestFind (line 45) | func TestFind(t *testing.T) { FILE: go/06_linkedlist/palindrome-linked-list.go function isPalindrome (line 8) | func isPalindrome(head *ListNode) bool { FILE: go/06_linkedlist/palindrome.go function isPalindrome1 (line 8) | func isPalindrome1(l *LinkedList) bool { function isPalindrome2 (line 41) | func isPalindrome2(l *LinkedList) bool { FILE: go/06_linkedlist/palindrome_test.go function TestPalindrome1 (line 5) | func TestPalindrome1(t *testing.T) { function TestPalindrome2 (line 17) | func TestPalindrome2(t *testing.T) { FILE: go/06_linkedlist/singlelinkedlist.go type ListNode (line 10) | type ListNode struct method GetNext (line 24) | func (this *ListNode) GetNext() *ListNode { method GetValue (line 28) | func (this *ListNode) GetValue() interface{} { type LinkedList (line 15) | type LinkedList struct method InsertAfter (line 37) | func (this *LinkedList) InsertAfter(p *ListNode, v interface{}) bool { method InsertBefore (line 50) | func (this *LinkedList) InsertBefore(p *ListNode, v interface{}) bool { method InsertToHead (line 74) | func (this *LinkedList) InsertToHead(v interface{}) bool { method InsertToTail (line 79) | func (this *LinkedList) InsertToTail(v interface{}) bool { method FindByIndex (line 88) | func (this *LinkedList) FindByIndex(index uint) *ListNode { method DeleteNode (line 101) | func (this *LinkedList) DeleteNode(p *ListNode) bool { method Print (line 124) | func (this *LinkedList) Print() { function NewListNode (line 20) | func NewListNode(v interface{}) *ListNode { function NewLinkedList (line 32) | func NewLinkedList() *LinkedList { FILE: go/06_linkedlist/singlelinkedlist_test.go function TestInsertToHead (line 5) | func TestInsertToHead(t *testing.T) { function TestInsertToTail (line 13) | func TestInsertToTail(t *testing.T) { function TestFindByIndex (line 21) | func TestFindByIndex(t *testing.T) { function TestDeleteNode (line 32) | func TestDeleteNode(t *testing.T) { FILE: go/07_linkedlist/main.go type ListNode (line 6) | type ListNode struct type LinkedList (line 12) | type LinkedList struct method Print (line 17) | func (this *LinkedList) Print() { method Reverse (line 34) | func (this *LinkedList) Reverse() { method HasCycle (line 54) | func (this *LinkedList) HasCycle() bool { method DeleteBottomN (line 107) | func (this *LinkedList) DeleteBottomN(n int) { method FindMiddleNode (line 132) | func (this *LinkedList) FindMiddleNode() *ListNode { function MergeSortedList (line 72) | func MergeSortedList(l1, l2 *LinkedList) *LinkedList { FILE: go/07_linkedlist/main_test.go function init (line 7) | func init() { function TestReverse (line 16) | func TestReverse(t *testing.T) { function TestHasCycle (line 22) | func TestHasCycle(t *testing.T) { function TestMergeSortedList (line 28) | func TestMergeSortedList(t *testing.T) { function TestDeleteBottomN (line 46) | func TestDeleteBottomN(t *testing.T) { function TestFindMiddleNode (line 52) | func TestFindMiddleNode(t *testing.T) { FILE: go/08_stack/SimpleBrowser.go type Browser (line 5) | type Browser struct method CanForward (line 17) | func (this *Browser) CanForward() bool { method CanBack (line 24) | func (this *Browser) CanBack() bool { method Open (line 31) | func (this *Browser) Open(addr string) { method PushBack (line 36) | func (this *Browser) PushBack(addr string) { method Forward (line 40) | func (this *Browser) Forward() { method Back (line 49) | func (this *Browser) Back() { function NewBrowser (line 10) | func NewBrowser() *Browser { FILE: go/08_stack/SimpleBrowser_test.go function TestBrowser (line 5) | func TestBrowser(t *testing.T) { FILE: go/08_stack/StackBasedOnArray.go type ArrayStack (line 9) | type ArrayStack struct method IsEmpty (line 23) | func (this *ArrayStack) IsEmpty() bool { method Push (line 30) | func (this *ArrayStack) Push(v interface{}) { method Pop (line 44) | func (this *ArrayStack) Pop() interface{} { method Top (line 53) | func (this *ArrayStack) Top() interface{} { method Flush (line 60) | func (this *ArrayStack) Flush() { method Print (line 64) | func (this *ArrayStack) Print() { function NewArrayStack (line 16) | func NewArrayStack() *ArrayStack { FILE: go/08_stack/StackBasedOnArray_test.go function TestArrayStack_Push (line 5) | func TestArrayStack_Push(t *testing.T) { function TestArrayStack_Pop (line 18) | func TestArrayStack_Pop(t *testing.T) { function TestArrayStack_Top (line 32) | func TestArrayStack_Top(t *testing.T) { FILE: go/08_stack/StackBasedOnLinkedList.go type node (line 8) | type node struct type LinkedListStack (line 13) | type LinkedListStack struct method IsEmpty (line 22) | func (this *LinkedListStack) IsEmpty() bool { method Push (line 26) | func (this *LinkedListStack) Push(v interface{}) { method Pop (line 30) | func (this *LinkedListStack) Pop() interface{} { method Top (line 39) | func (this *LinkedListStack) Top() interface{} { method Flush (line 46) | func (this *LinkedListStack) Flush() { method Print (line 50) | func (this *LinkedListStack) Print() { function NewLinkedListStack (line 18) | func NewLinkedListStack() *LinkedListStack { FILE: go/08_stack/StackBasedOnLinkedList_test.go function TestLinkedListStack_Push (line 5) | func TestLinkedListStack_Push(t *testing.T) { function TestLinkedListStack_Pop (line 13) | func TestLinkedListStack_Pop(t *testing.T) { function TestLinkedListStack_Top (line 27) | func TestLinkedListStack_Top(t *testing.T) { FILE: go/08_stack/StatckInterface.go type Stack (line 3) | type Stack interface FILE: go/09_queue/CircularQueue.go type CircularQueue (line 5) | type CircularQueue struct method IsEmpty (line 22) | func (this *CircularQueue) IsEmpty() bool { method IsFull (line 32) | func (this *CircularQueue) IsFull() bool { method EnQueue (line 39) | func (this *CircularQueue) EnQueue(v interface{}) bool { method DeQueue (line 48) | func (this *CircularQueue) DeQueue() interface{} { method String (line 57) | func (this *CircularQueue) String() string { function NewCircularQueue (line 12) | func NewCircularQueue(n int) *CircularQueue { FILE: go/09_queue/CircularQueue_test.go function TestCircularQueue_EnQueue (line 5) | func TestCircularQueue_EnQueue(t *testing.T) { function TestCircularQueue_DeQueue (line 16) | func TestCircularQueue_DeQueue(t *testing.T) { FILE: go/09_queue/QueueBasedOnArray.go type ArrayQueue (line 5) | type ArrayQueue struct method EnQueue (line 16) | func (this *ArrayQueue) EnQueue(v interface{}) bool { method DeQueue (line 25) | func (this *ArrayQueue) DeQueue() interface{} { method String (line 34) | func (this *ArrayQueue) String() string { function NewArrayQueue (line 12) | func NewArrayQueue(n int) *ArrayQueue { FILE: go/09_queue/QueueBasedOnArray_test.go function TestArrayQueue_EnQueue (line 5) | func TestArrayQueue_EnQueue(t *testing.T) { function TestArrayQueue_DeQueue (line 16) | func TestArrayQueue_DeQueue(t *testing.T) { FILE: go/09_queue/QueueBasedOnLinkedList.go type ListNode (line 5) | type ListNode struct type LinkedListQueue (line 10) | type LinkedListQueue struct method EnQueue (line 20) | func (this *LinkedListQueue) EnQueue(v interface{}) { method DeQueue (line 32) | func (this *LinkedListQueue) DeQueue() interface{} { method String (line 42) | func (this *LinkedListQueue) String() string { function NewLinkedListQueue (line 16) | func NewLinkedListQueue() *LinkedListQueue { FILE: go/09_queue/QueueBasedOnLinkedList_test.go function TestListQueue_EnQueue (line 5) | func TestListQueue_EnQueue(t *testing.T) { function TestListQueue_DeQueue (line 16) | func TestListQueue_DeQueue(t *testing.T) { FILE: go/10_recursion/Factorial.go type Fac (line 4) | type Fac struct method Factorial (line 14) | func (fac *Fac) Factorial(n int) int { method Print (line 29) | func (fac *Fac) Print(n int ) { function NewFactorial (line 8) | func NewFactorial(n int) *Fac { FILE: go/10_recursion/Factorial_test.go function TestFac_Factorial (line 5) | func TestFac_Factorial(t *testing.T) { FILE: go/10_recursion/Fibonacci.go type Fibs (line 6) | type Fibs struct method Fibonacci (line 16) | func (fib *Fibs)Fibonacci(n int) int { method Print (line 33) | func (fib *Fibs)Print(n int) { function NewFibs (line 10) | func NewFibs(n int) *Fibs { FILE: go/10_recursion/Fibonacci_test.go function TestFibs_Fibonacci (line 5) | func TestFibs_Fibonacci(t *testing.T) { FILE: go/10_recursion/RangAll.go type RangeType (line 7) | type RangeType struct method RangeALL (line 17) | func (slice *RangeType)RangeALL( start int) { function NewRangeArray (line 11) | func NewRangeArray(n int) *RangeType { FILE: go/10_recursion/RangAll_test.go function TestRangeALL (line 5) | func TestRangeALL(t *testing.T) { FILE: go/11_sorts/Sort.go function BubbleSort (line 8) | func BubbleSort(a []int, n int) { function InsertionSort (line 30) | func InsertionSort(a []int, n int) { function SelectionSort (line 50) | func SelectionSort(a []int, n int) { FILE: go/11_sorts/Sort_test.go function TestBubbleSort (line 8) | func TestBubbleSort(t *testing.T) { function TestInsertionSort (line 15) | func TestInsertionSort(t *testing.T) { function TestSelectionSort (line 22) | func TestSelectionSort(t *testing.T) { FILE: go/12_sorts/MergeSort.go function MergeSort (line 3) | func MergeSort(arr []int) { function mergeSort (line 12) | func mergeSort(arr []int, start, end int) { function merge (line 23) | func merge(arr []int, start, mid, end int) { FILE: go/12_sorts/MergeSort_test.go function TestMergeSort (line 5) | func TestMergeSort(t *testing.T) { FILE: go/12_sorts/QuickSort.go function QuickSort (line 4) | func QuickSort(arr []int) { function separateSort (line 8) | func separateSort(arr []int, start, end int) { function partition (line 17) | func partition(arr []int, start, end int) int { FILE: go/12_sorts/QuickSort_test.go function createRandomArr (line 8) | func createRandomArr(length int) []int { function TestQuickSort (line 16) | func TestQuickSort(t *testing.T) { FILE: go/13_sorts/BucketSort.go function getMax (line 11) | func getMax(a []int)int{ function BucketSort (line 22) | func BucketSort(a []int) { function BucketSortSimple (line 50) | func BucketSortSimple(source []int) { FILE: go/13_sorts/BucketSort_test.go function TestBucketSort (line 5) | func TestBucketSort(t *testing.T) { function TestBucketSortSimple (line 11) | func TestBucketSortSimple(t *testing.T) { FILE: go/14_sorts/CountingSort.go function CountingSort (line 5) | func CountingSort(a []int, n int) { FILE: go/14_sorts/CountingSort_test.go function TestCountingSort (line 5) | func TestCountingSort(t *testing.T) { FILE: go/15_binarysearch/binarysearch.go function BinarySearch (line 3) | func BinarySearch(a []int, v int) int { function BinarySearchRecursive (line 25) | func BinarySearchRecursive(a []int, v int) int { function bs (line 34) | func bs(a []int, v int, low, high int) int { function BinarySearchFirst (line 50) | func BinarySearchFirst(a []int, v int) int { function BinarySearchLast (line 77) | func BinarySearchLast(a []int, v int) int { function BinarySearchFirstGT (line 104) | func BinarySearchFirstGT(a []int, v int) int { function BinarySearchLastLT (line 131) | func BinarySearchLastLT(a []int, v int) int { FILE: go/15_binarysearch/binarysearch_test.go function TestBinarySearch (line 5) | func TestBinarySearch(t *testing.T) { function TestBinarySearchRecursive (line 17) | func TestBinarySearchRecursive(t *testing.T) { function TestBinarySearchFirst (line 29) | func TestBinarySearchFirst(t *testing.T) { function TestBinarySearchLast (line 43) | func TestBinarySearchLast(t *testing.T) { function TestBinarySearchFirstGT (line 57) | func TestBinarySearchFirstGT(t *testing.T) { function TestBinarySearchLastLT (line 81) | func TestBinarySearchLastLT(t *testing.T) { FILE: go/17_skiplist/skiplist.go constant MAX_LEVEL (line 11) | MAX_LEVEL = 16 type skipListNode (line 15) | type skipListNode struct function newSkipListNode (line 27) | func newSkipListNode(v interface{}, score, level int) *skipListNode { type SkipList (line 32) | type SkipList struct method Length (line 49) | func (sl *SkipList) Length() int { method Level (line 54) | func (sl *SkipList) Level() int { method Insert (line 59) | func (sl *SkipList) Insert(v interface{}, score int) int { method Find (line 116) | func (sl *SkipList) Find(v interface{}, score int) *skipListNode { method Delete (line 137) | func (sl *SkipList) Delete(v interface{}, score int) int { method String (line 175) | func (sl *SkipList) String() string { function NewSkipList (line 42) | func NewSkipList() *SkipList { FILE: go/17_skiplist/skiplist_test.go function TestSkipList (line 5) | func TestSkipList(t *testing.T) { FILE: go/20_lru/lru_cache.go constant hostbit (line 4) | hostbit = uint64(^uint(0)) == ^uint64(0) constant LENGTH (line 5) | LENGTH = 100 type lruNode (line 8) | type lruNode struct type LRUCache (line 18) | type LRUCache struct method Get (line 38) | func (this *LRUCache) Get(key int) int { method Put (line 50) | func (this *LRUCache) Put(key int, value int) { method addNode (line 68) | func (this *LRUCache) addNode(key int, value int) { method delNode (line 88) | func (this *LRUCache) delNode() { method searchNode (line 108) | func (this *LRUCache) searchNode(key int) *lruNode { method moveToTail (line 124) | func (this *LRUCache) moveToTail(node *lruNode) { function Constructor (line 28) | func Constructor(capacity int) LRUCache { function hash (line 143) | func hash(key int) int { FILE: go/20_lru/lru_cache_test.go function Test_Hostbit (line 10) | func Test_Hostbit(t *testing.T) { function Test_LRU (line 14) | func Test_LRU(t *testing.T) { function Test_LRU_PutGet (line 28) | func Test_LRU_PutGet(t *testing.T) { function Test_LRU_PutGetPutGetGet (line 35) | func Test_LRU_PutGetPutGetGet(t *testing.T) { function Test_LRU_PPGPPG (line 45) | func Test_LRU_PPGPPG(t *testing.T) { function Test_LRU_PPGPPG_2 (line 57) | func Test_LRU_PPGPPG_2(t *testing.T) { FILE: go/23_binarytree/binarytree.go type TreeNode (line 3) | type TreeNode struct function preOrderTraversal (line 9) | func preOrderTraversal(root *TreeNode) []int { function inOrderTraversal (line 33) | func inOrderTraversal(root *TreeNode) []int { function postOrderTraversal (line 47) | func postOrderTraversal(root *TreeNode) []int { FILE: go/23_binarytree/binarytree_test.go function PreIn2Tree (line 28) | func PreIn2Tree(pre, in []int) *TreeNode { function indexOf (line 53) | func indexOf(val int, nums []int) int { function Test_preOrderTraversal (line 63) | func Test_preOrderTraversal(t *testing.T) { function Test_inOrderTraversal (line 74) | func Test_inOrderTraversal(t *testing.T) { function Test_postOrderTraversal (line 85) | func Test_postOrderTraversal(t *testing.T) { FILE: go/24_tree/BinarySearchTree.go type BST (line 3) | type BST struct method Find (line 16) | func (this *BST) Find(v interface{}) *Node { method Insert (line 31) | func (this *BST) Insert(v interface{}) bool { method Delete (line 54) | func (this *BST) Delete(v interface{}) bool { method Min (line 131) | func (this *BST) Min() *Node { method Max (line 139) | func (this *BST) Max() *Node { function NewBST (line 9) | func NewBST(rootV interface{}, compareFunc func(v, nodeV interface{}) in... FILE: go/24_tree/BinarySearchTree_test.go function TestBST_Find (line 17) | func TestBST_Find(t *testing.T) { function TestBST_Insert (line 29) | func TestBST_Insert(t *testing.T) { function TestBST_Min (line 41) | func TestBST_Min(t *testing.T) { function TestBST_Max (line 53) | func TestBST_Max(t *testing.T) { function TestBST_DeleteA (line 65) | func TestBST_DeleteA(t *testing.T) { function TestBST_DeleteB (line 78) | func TestBST_DeleteB(t *testing.T) { function TestBST_DeleteC (line 87) | func TestBST_DeleteC(t *testing.T) { function TestBST_DeleteD (line 100) | func TestBST_DeleteD(t *testing.T) { function TestBST_DeleteE (line 111) | func TestBST_DeleteE(t *testing.T) { function TestBST_DeleteF (line 123) | func TestBST_DeleteF(t *testing.T) { function TestBST_DeleteG (line 135) | func TestBST_DeleteG(t *testing.T) { FILE: go/24_tree/BinaryTree.go type BinaryTree (line 5) | type BinaryTree struct method InOrderTraverse (line 13) | func (this *BinaryTree) InOrderTraverse() { method PreOrderTraverse (line 30) | func (this *BinaryTree) PreOrderTraverse() { method PostOrderTraverse (line 47) | func (this *BinaryTree) PostOrderTraverse() { method PostOrderTraverse2 (line 68) | func (this *BinaryTree) PostOrderTraverse2() { function NewBinaryTree (line 9) | func NewBinaryTree(rootV interface{}) *BinaryTree { FILE: go/24_tree/BinaryTree_test.go function TestBinaryTree_InOrderTraverse (line 5) | func TestBinaryTree_InOrderTraverse(t *testing.T) { function TestBinaryTree_PreOrderTraverse (line 14) | func TestBinaryTree_PreOrderTraverse(t *testing.T) { function TestBinaryTree_PostOrderTraverse (line 23) | func TestBinaryTree_PostOrderTraverse(t *testing.T) { function TestBinaryTree_PostOrderTraverse2 (line 32) | func TestBinaryTree_PostOrderTraverse2(t *testing.T) { FILE: go/24_tree/StackBasedOnArray.go type ArrayStack (line 9) | type ArrayStack struct method IsEmpty (line 23) | func (this *ArrayStack) IsEmpty() bool { method Push (line 30) | func (this *ArrayStack) Push(v interface{}) { method Pop (line 44) | func (this *ArrayStack) Pop() interface{} { method Top (line 53) | func (this *ArrayStack) Top() interface{} { method Flush (line 60) | func (this *ArrayStack) Flush() { method Print (line 64) | func (this *ArrayStack) Print() { function NewArrayStack (line 16) | func NewArrayStack() *ArrayStack { FILE: go/24_tree/TreeNode.go type Node (line 5) | type Node struct method String (line 15) | func (this *Node) String() string { function NewNode (line 11) | func NewNode(data interface{}) *Node { FILE: go/28_heap/heap.go type Heap (line 3) | type Heap struct method insert (line 19) | func (heap *Heap) insert(data int) { method removeMax (line 39) | func (heap *Heap) removeMax() { function NewHeap (line 10) | func NewHeap(capacity int) *Heap { function heapifyUpToDown (line 55) | func heapifyUpToDown(a []int, count int) { function swap (line 79) | func swap(a []int, i int, j int) { FILE: go/28_heap/heap_sort.go function buidHeap (line 4) | func buidHeap(a []int, n int) { function sort (line 14) | func sort(a []int, n int) { function heapifyUpToDown (line 26) | func heapifyUpToDown(a []int, top int, count int) { function swap (line 50) | func swap(a []int, i int, j int) { FILE: go/29_priority_queue/heap.go function adjustHeap (line 3) | func adjustHeap(src []Node, start, end int) { FILE: go/29_priority_queue/heap_test.go function Test_AdjustHeap (line 9) | func Test_AdjustHeap(t *testing.T) { FILE: go/29_priority_queue/priority_queue.go type Node (line 4) | type Node struct type PQueue (line 10) | type PQueue struct method Push (line 27) | func (q *PQueue) Push(node Node) { method Pop (line 40) | func (q *PQueue) Pop() Node { method Top (line 55) | func (q *PQueue) Top() Node { function NewPriorityQueue (line 18) | func NewPriorityQueue(capacity int) PQueue { FILE: go/29_priority_queue/priority_queue_test.go function Test_Push (line 9) | func Test_Push(t *testing.T) { function Test_PushPop (line 31) | func Test_PushPop(t *testing.T) { FILE: go/31_graph/graph_search.go type Graph (line 9) | type Graph struct method addEdge (line 26) | func (self *Graph) addEdge(s int, t int) { method BFS (line 32) | func (self *Graph) BFS(s int, t int) { method DFS (line 78) | func (self *Graph) DFS(s int, t int) { method recurse (line 95) | func (self *Graph) recurse(s int, t int, prev []int, visited []bool, i... function newGraph (line 15) | func newGraph(v int) *Graph { function printPrev (line 120) | func printPrev(prev []int, s int, t int) { FILE: go/32_string/string_bf.go function bfSearch (line 8) | func bfSearch(main string, pattern string) int { function main (line 25) | func main() { FILE: go/32_string/string_bm.go function generateBC (line 9) | func generateBC(pattern string) []int { function generateGS (line 25) | func generateGS(pattern string) ([]int, []bool) { function moveByGS (line 54) | func moveByGS(patternLength int, badCharStartIndex int, suffix []int, pr... function bmSearch (line 76) | func bmSearch(main string, pattern string) int { function findBadChar (line 112) | func findBadChar(subStr string, pattern string, bc []int) (int, int) { function main (line 134) | func main() { FILE: go/34_kmp/kmp.go function getNexts (line 7) | func getNexts(pattern string) []int { function findByKMP (line 31) | func findByKMP(s string, pattern string) int { function main (line 57) | func main(){ FILE: go/41_dynamic_programming/backtracking/leastcoins.go constant intMax (line 7) | intMax = int(^uint(0) >> 1) function LeastCoins (line 12) | func LeastCoins(targetTotal int, coinOptions []int) int { function leastCoins (line 27) | func leastCoins(minNum *int, cNum, totalValue, opIndex int, coinOptions ... function shouldSkip (line 60) | func shouldSkip(memo [][]int, totalValue, nextOpIdex, cNum int) bool { function LeastCoins2 (line 71) | func LeastCoins2(targetTotal int, coinOptions []int) int { function leastCoins2 (line 87) | func leastCoins2(minNum *int, targetTotal int, coinOptions []int, cNum, ... FILE: go/41_dynamic_programming/backtracking/leastcoins_test.go function TestFindLeastCoins (line 5) | func TestFindLeastCoins(t *testing.T) { function TestFindLeastCoins2 (line 31) | func TestFindLeastCoins2(t *testing.T) { FILE: go/41_dynamic_programming/dp/leastcoins.go function LeastCoins (line 6) | func LeastCoins(targetTotal int, coinOptions []int) int { function LeastCoins2 (line 16) | func LeastCoins2(targetTotal int, coinOptions []int) int { function leastCoins (line 42) | func leastCoins(targetTotal int, coinOptions, memo []int) int { FILE: go/41_dynamic_programming/dp/leastcoins_test.go function TestFindLeastCoins (line 5) | func TestFindLeastCoins(t *testing.T) { function TestFindLeastCoins2 (line 31) | func TestFindLeastCoins2(t *testing.T) { FILE: go/42_dynamic_programming/longest_common_substring.go function lsc (line 5) | func lsc(s1 string, s2 string) int { function main (line 36) | func main() { FILE: go/45_bitmap/bitmap.go type BitMap (line 4) | type BitMap method Set (line 12) | func (b BitMap) Set(value uint) { method Get (line 22) | func (b BitMap) Get(value uint) bool { function New (line 7) | func New(length uint) BitMap { FILE: go/45_bitmap/bitmap_test.go function TestBitMap (line 7) | func TestBitMap(t *testing.T) { FILE: go/binarysearch2.go function BinarySearch2 (line 4) | func BinarySearch2(nums []int, value int) int { function BinarySearch3 (line 28) | func BinarySearch3(nums []int, value int) int { function BinarySearch4 (line 51) | func BinarySearch4(nums []int, value int) int { function BinarySearch5 (line 72) | func BinarySearch5(nums []int, value int) int { FILE: java/05_array/Array.java class Array (line 10) | public class Array { method Array (line 19) | public Array(int capacity){ method find (line 26) | public int find(int index){ method insert (line 32) | public boolean insert(int index, int value){ method delete (line 61) | public boolean delete(int index){ method printAll (line 77) | public void printAll() { method main (line 84) | public static void main(String[] args) { FILE: java/05_array/GenericArray.java class GenericArray (line 1) | public class GenericArray { method GenericArray (line 6) | public GenericArray(int capacity) { method GenericArray (line 12) | public GenericArray() { method getCapacity (line 17) | public int getCapacity() { method count (line 22) | public int count() { method isEmpty (line 27) | public boolean isEmpty() { method set (line 32) | public void set(int index, T e) { method get (line 38) | public T get(int index) { method contains (line 44) | public boolean contains(T e) { method find (line 54) | public int find(T e) { method add (line 65) | public void add(int index, T e) { method addFirst (line 80) | public void addFirst(T e) { method addLast (line 85) | public void addLast(T e) { method remove (line 90) | public T remove(int index) { method removeFirst (line 109) | public T removeFirst() { method removeLast (line 114) | public T removeLast() { method removeElement (line 119) | public void removeElement(T e) { method toString (line 126) | @Override method resize (line 143) | private void resize(int capacity) { method checkIndex (line 152) | private void checkIndex(int index) { method checkIndexForAdd (line 158) | private void checkIndexForAdd(int index) { FILE: java/06_linkedlist/LRUBaseLinkedList.java class LRUBaseLinkedList (line 12) | public class LRUBaseLinkedList { method LRUBaseLinkedList (line 34) | public LRUBaseLinkedList() { method LRUBaseLinkedList (line 40) | public LRUBaseLinkedList(Integer capacity) { method add (line 46) | public void add(T data) { method deleteElemOptim (line 67) | private void deleteElemOptim(SNode preNode) { method intsertElemAtBegin (line 79) | private void intsertElemAtBegin(T data) { method findPreNode (line 91) | private SNode findPreNode(T data) { method deleteElemAtEnd (line 105) | private void deleteElemAtEnd() { method printAll (line 123) | private void printAll() { class SNode (line 132) | public class SNode { method SNode (line 138) | public SNode(T element) { method SNode (line 142) | public SNode(T element, SNode next) { method SNode (line 147) | public SNode() { method getElement (line 151) | public T getElement() { method setElement (line 155) | public void setElement(T element) { method getNext (line 159) | public SNode getNext() { method setNext (line 163) | public void setNext(SNode next) { method main (line 168) | public static void main(String[] args) { FILE: java/06_linkedlist/LRUBasedArray.java class LRUBasedArray (line 13) | public class LRUBasedArray { method LRUBasedArray (line 25) | public LRUBasedArray() { method LRUBasedArray (line 29) | public LRUBasedArray(int capacity) { method offer (line 40) | public void offer(T object) { method update (line 60) | public void update(int end) { method cache (line 72) | public void cache(T object, int end) { method removeAndCache (line 83) | public void removeAndCache(T object) { method rightShift (line 93) | private void rightShift(int end) { method isContain (line 100) | public boolean isContain(T object) { method isEmpty (line 104) | public boolean isEmpty() { method isFull (line 108) | public boolean isFull() { method toString (line 112) | @Override class TestLRUBasedArray (line 122) | static class TestLRUBasedArray { method main (line 124) | public static void main(String[] args) { method testWithException (line 130) | private static void testWithException() { method testDefaultConstructor (line 135) | public static void testDefaultConstructor() { method testSpecifiedConstructor (line 151) | public static void testSpecifiedConstructor(int capacity) { FILE: java/06_linkedlist/SinglyLinkedList.java class SinglyLinkedList (line 9) | public class SinglyLinkedList { method findByValue (line 13) | public Node findByValue(int value) { method findByIndex (line 22) | public Node findByIndex(int index) { method insertToHead (line 36) | public void insertToHead(int value) { method insertToHead (line 41) | public void insertToHead(Node newNode) { method insertTail (line 52) | public void insertTail(int value){ method insertAfter (line 68) | public void insertAfter(Node p, int value) { method insertAfter (line 73) | public void insertAfter(Node p, Node newNode) { method insertBefore (line 80) | public void insertBefore(Node p, int value) { method insertBefore (line 85) | public void insertBefore(Node p, Node newNode) { method deleteByNode (line 106) | public void deleteByNode(Node p) { method deleteByValue (line 126) | public void deleteByValue(int value) { method printAll (line 161) | public void printAll() { method TFResult (line 171) | public boolean TFResult(Node left, Node right){ method palindrome (line 201) | public boolean palindrome(){ method inverseLinkList_head (line 240) | public Node inverseLinkList_head(Node p){ method inverseLinkList (line 269) | public Node inverseLinkList(Node p){ method createNode (line 290) | public static Node createNode(int value) { class Node (line 294) | public static class Node { method Node (line 298) | public Node(int data, Node next) { method getData (line 303) | public int getData() { method main (line 308) | public static void main(String[]args){ FILE: java/07_linkedlist/LinkedListAlgo.java class LinkedListAlgo (line 12) | public class LinkedListAlgo { method reverse (line 15) | public static Node reverse(Node list) { method checkCircle (line 27) | public static boolean checkCircle(Node list) { method mergeTwoLists (line 91) | public ListNode mergeTwoLists(ListNode l1, ListNode l2) { method deleteLastKth (line 114) | public static Node deleteLastKth(Node list, int k) { method findMiddleNode (line 141) | public static Node findMiddleNode(Node list) { method printAll (line 155) | public static void printAll(Node list) { method createNode (line 164) | public static Node createNode(int value) { class Node (line 168) | public static class Node { method Node (line 172) | public Node(int data, Node next) { method getData (line 177) | public int getData() { FILE: java/08_stack/SampleBrowser.java class SampleBrowser (line 8) | public class SampleBrowser { method main (line 10) | public static void main(String[] args) { method SampleBrowser (line 33) | public SampleBrowser() { method open (line 38) | public void open(String url) { method canGoBack (line 46) | public boolean canGoBack() { method canGoForward (line 50) | public boolean canGoForward() { method goBack (line 54) | public String goBack() { method goForward (line 66) | public String goForward() { method showUrl (line 78) | public void showUrl(String url, String prefix) { method checkCurrentPage (line 83) | public void checkCurrentPage() { class LinkedListBasedStack (line 90) | public static class LinkedListBasedStack { method createNode (line 111) | static Node createNode(String data, Node next) { method clear (line 115) | public void clear() { method push (line 120) | public void push(String data) { method pop (line 126) | public String pop() { method getTopData (line 139) | public String getTopData() { method size (line 146) | public int size() { method print (line 150) | public void print() { class Node (line 161) | public static class Node { method Node (line 166) | public Node(String data) { method Node (line 170) | public Node(String data, Node next) { method setData (line 175) | public void setData(String data) { method getData (line 179) | public String getData() { method setNext (line 183) | public void setNext(Node next) { method getNext (line 187) | public Node getNext() { FILE: java/08_stack/StackBasedOnLinkedList.java class StackBasedOnLinkedList (line 8) | public class StackBasedOnLinkedList { method push (line 11) | public void push(int value) { method pop (line 25) | public int pop() { method printAll (line 32) | public void printAll() { class Node (line 41) | private static class Node { method Node (line 45) | public Node(int data, Node next) { method getData (line 50) | public int getData() { FILE: java/09_queue/ArrayQueue.java class ArrayQueue (line 7) | public class ArrayQueue { method ArrayQueue (line 16) | public ArrayQueue(int capacity) { method enqueue (line 22) | public boolean enqueue(String item) { method dequeue (line 31) | public String dequeue() { method printAll (line 40) | public void printAll() { FILE: java/09_queue/CircularQueue.java class CircularQueue (line 6) | public class CircularQueue { method CircularQueue (line 15) | public CircularQueue(int capacity) { method enqueue (line 21) | public boolean enqueue(String item) { method dequeue (line 30) | public String dequeue() { method printAll (line 38) | public void printAll() { FILE: java/09_queue/DynamicArrayQueue.java class DynamicArrayQueue (line 6) | public class DynamicArrayQueue { method DynamicArrayQueue (line 15) | public DynamicArrayQueue(int capacity) { method enqueue (line 21) | public boolean enqueue(String item) { method dequeue (line 41) | public String dequeue() { method printAll (line 50) | public void printAll() { FILE: java/09_queue/QueueBasedOnLinkedList.java class QueueBasedOnLinkedList (line 8) | public class QueueBasedOnLinkedList { method enqueue (line 15) | public void enqueue(String value) { method dequeue (line 27) | public String dequeue() { method printAll (line 38) | public void printAll() { class Node (line 47) | private static class Node { method Node (line 51) | public Node(String data, Node next) { method getData (line 56) | public String getData() { FILE: java/11_sorts/InsertionSortAdd.java class InsertionSortAdd (line 9) | public class InsertionSortAdd { method main (line 11) | public static void main(String[] args) { method fromStartToEnd (line 21) | private static void fromStartToEnd(int[] data) { FILE: java/11_sorts/Sorts.java class Sorts (line 10) | public class Sorts { method bubbleSort (line 13) | public static void bubbleSort(int[] a, int n) { method bubbleSort2 (line 36) | public static void bubbleSort2(int[] a, int n) { method insertionSort (line 63) | public static void insertionSort(int[] a, int n) { method selectionSort (line 82) | public static void selectionSort(int[] a, int n) { method main (line 101) | public static void main(String[] args) { FILE: java/11_sorts/SortsAddOn.java class SortsAddOn (line 9) | public class SortsAddOn { method main (line 11) | public static void main(String[] args) { method bubbleDownSort (line 54) | private static void bubbleDownSort(int[] arr) { method shellSort (line 70) | private static void shellSort(int[] arr) { method print (line 93) | private static void print(int[] arr) { FILE: java/12_sorts/KthSmallest.java class KthSmallest (line 7) | public class KthSmallest { method kthSmallest (line 9) | public static int kthSmallest(int[] arr, int k) { method partition (line 26) | private static int partition(int[] arr, int p, int r) { method swap (line 43) | private static void swap(int[] arr, int i, int j) { FILE: java/12_sorts/MergeSort.java class MergeSort (line 6) | public class MergeSort { method mergeSort (line 9) | public static void mergeSort(int[] a, int n) { method mergeSortInternally (line 14) | private static void mergeSortInternally(int[] a, int p, int r) { method merge (line 28) | private static void merge(int[] a, int p, int q, int r) { method mergeBySentry (line 68) | private static void mergeBySentry(int[] arr, int p, int q, int r) { FILE: java/12_sorts/QuickSort.java class QuickSort (line 6) | public class QuickSort { method quickSort (line 9) | public static void quickSort(int[] a, int n) { method quickSortInternally (line 14) | private static void quickSortInternally(int[] a, int p, int r) { method partition (line 22) | private static int partition(int[] a, int p, int r) { FILE: java/12_sorts/Sorts.java class Sorts (line 11) | public class Sorts { method bubbleSort (line 18) | public static void bubbleSort(int[] arr) { method bubbleSort2 (line 35) | public static void bubbleSort2(int[] arr) { method insertSort (line 57) | public static void insertSort(int[] arr) { method insertSort (line 75) | public static void insertSort(int[] arr, int n) { method selectSort (line 92) | public static void selectSort(int[] arr) { method mergeSort (line 113) | public static void mergeSort(int[] arr, int left, int right) { method merge2 (line 124) | private static void merge2(int[] arr, int left, int q, int right) { method merge (line 153) | private static void merge(int[] arr, int left, int q, int right) { method quickSort (line 185) | public static void quickSort(int[] arr, int left, int right) { method partition (line 194) | private static int partition(int[] arr, int left, int right) { method partition2 (line 214) | private static int partition2(int[] arr, int left, int right) { method quickSort3 (line 248) | private static void quickSort3(int[] arr, int left, int right) { method quickSort4 (line 298) | private static void quickSort4(int[] arr, int left, int right) { method sort (line 360) | public static int sort(int[] arr, int l, int r, int k) { method main (line 374) | public static void main(String[] args) { method print (line 387) | public static void print(int[] arr) { FILE: java/13_sorts/BucketSort.java class BucketSort (line 8) | public class BucketSort { method bucketSort (line 16) | public static void bucketSort(int[] arr, int bucketSize) { method ensureCapacity (line 66) | private static void ensureCapacity(int[][] buckets, int bucketIndex) { method quickSortC (line 82) | private static void quickSortC(int[] arr, int p, int r) { method partition (line 100) | private static int partition(int[] arr, int p, int r) { method swap (line 121) | private static void swap(int[] arr, int i, int j) { FILE: java/13_sorts/CountingSort.java class CountingSort (line 8) | public class CountingSort { method countingSort (line 11) | public static void countingSort(int[] a, int n) { FILE: java/13_sorts/RadixSort.java class RadixSort (line 8) | public class RadixSort { method radixSort (line 15) | public static void radixSort(int[] arr) { method countingSort (line 35) | public static void countingSort(int[] arr, int exp) { FILE: java/17_skiplist/SkipList.java class SkipList (line 10) | public class SkipList { method find (line 19) | public Node find(int value) { method insert (line 34) | public void insert(int value) { method delete (line 63) | public void delete(int value) { method randomLevel (line 93) | private int randomLevel() { method printAll (line 101) | public void printAll() { class Node (line 110) | public class Node { method toString (line 115) | @Override FILE: java/17_skiplist/SkipList2.java class SkipList2 (line 11) | public class SkipList2 { method find (line 22) | public Node find(int value) { method insert (line 44) | public void insert(int value) { method insert2 (line 82) | public void insert2(int value) { method insert (line 119) | public void insert(int value, int level) { method delete (line 162) | public void delete(int value) { method randomLevel (line 186) | private int randomLevel() { method printAll (line 199) | public void printAll() { method printAll_beautiful (line 211) | public void printAll_beautiful() { class Node (line 228) | public class Node { method Node (line 241) | public Node(int level) { method toString (line 245) | @Override method main (line 257) | public static void main(String[] args) { FILE: java/18_hashtable/HashTable.java class HashTable (line 8) | public class HashTable { method HashTable (line 35) | public HashTable() { class Entry (line 39) | static class Entry { method Entry (line 46) | Entry(K key, V value, Entry next) { method put (line 59) | public void put(K key, V value) { method hash (line 102) | private int hash(Object key) { method resize (line 110) | private void resize() { method remove (line 137) | public void remove(K key) { method get (line 164) | public V get(K key) { FILE: java/20_hashtable/LRUBaseHashTable.java class LRUBaseHashTable (line 10) | public class LRUBaseHashTable { class DNode (line 45) | static class DNode { method DNode (line 64) | DNode() { method DNode (line 67) | DNode(K key, V value) { method LRUBaseHashTable (line 74) | public LRUBaseHashTable(int capacity) { method LRUBaseHashTable (line 88) | public LRUBaseHashTable() { method add (line 98) | public void add(K key, V value) { method addNode (line 121) | private void addNode(DNode newNode) { method popTail (line 132) | private DNode popTail() { method removeNode (line 143) | private void removeNode(DNode node) { method moveToHead (line 153) | private void moveToHead(DNode node) { method get (line 164) | public V get(K key) { method remove (line 178) | public void remove(K key) { method printAll (line 188) | private void printAll() { FILE: java/24_tree/BinarySearchTree.java class BinarySearchTree (line 1) | public class BinarySearchTree { method find (line 4) | public Node find(int data) { method insert (line 14) | public void insert(int data) { method delete (line 38) | public void delete(int data) { method findMin (line 72) | public Node findMin() { method findMax (line 81) | public Node findMax() { class Node (line 90) | public static class Node { method Node (line 95) | public Node(int data) { FILE: java/28_sorts/HeapSort.java class HeapSort (line 4) | public class HeapSort { method sort (line 13) | public static void sort(int[] arr) { method buildHeap (line 36) | private static void buildHeap(int[] arr) { method heapify (line 51) | private static void heapify(int[] arr, int n, int i) { FILE: java/30_graph/Graph.java class Graph (line 10) | public class Graph { method Graph (line 14) | public Graph(int v) { method addEdge (line 28) | public void addEdge(int s, int t) { // 无向图一条边存两次 method bfs (line 34) | public void bfs(int s, int t) { method print (line 64) | private void print(int[] prev, int s, int t) { // 递归打印 s->t 的路径 method main (line 71) | public static void main(String[] args) { method dfs (line 91) | public void dfs(int s, int t) { method recurDfs (line 102) | private void recurDfs(int w, int t, boolean[] visited, int[] prev) { FILE: java/36_ac_automata/ACAutoMata.java class ACAutoMata (line 10) | public class ACAutoMata { method ACAutoMata (line 13) | public ACAutoMata() { method insert (line 17) | private void insert (String pattern) { method buildFailurePointer (line 32) | private void buildFailurePointer() { method match (line 66) | private Boolean match (String text) { method match (line 95) | public static boolean match(String text, String[] patterns) { class ACNode (line 105) | public class ACNode { method ACNode (line 112) | public ACNode(String data) { method main (line 121) | public static void main(String[] args) { FILE: javascript/06_linkedlist/SinglyLinkedList.js class Node (line 5) | class Node { method constructor (line 6) | constructor (element) { class LinkedList (line 12) | class LinkedList { method constructor (line 13) | constructor () { method findByValue (line 17) | findByValue (item) { method findByIndex (line 27) | findByIndex (index) { method append (line 39) | append(newElement) { method insert (line 49) | insert (newElement, element) { method findPrev (line 61) | findPrev (item) { method remove (line 73) | remove (item) { method display (line 83) | display () { FILE: javascript/07_linkedlist/LinkedListAlgo.js class Node (line 9) | class Node { method constructor (line 10) | constructor(element) { class LinkedList (line 16) | class LinkedList { method constructor (line 17) | constructor() { method findByValue (line 21) | findByValue(item) { method findByIndex (line 29) | findByIndex(index) { method insert (line 39) | insert(newElement, element) { method findPrev (line 50) | findPrev(item) { method remove (line 61) | remove(item) { method display (line 71) | display() { method reverseList (line 83) | reverseList() { method reverseList1 (line 96) | reverseList1(){ method reverseList2 (line 120) | reverseList2() { method checkCircle (line 140) | checkCircle() { method removeByIndexFromEnd (line 151) | removeByIndexFromEnd(index) { method findMiddleNode (line 169) | findMiddleNode() { FILE: javascript/08_stack/SampleBrowser.js class SampleBrowser (line 8) | class SampleBrowser { method constructor (line 9) | constructor() { method pushNormal (line 14) | pushNormal(name) { method back (line 20) | back() { method front (line 30) | front() { method displayAllStack (line 40) | displayAllStack() { FILE: javascript/08_stack/StackBasedOnLinkedList.js class Node (line 7) | class Node { method constructor (line 8) | constructor(element) { class StackBasedLinkedList (line 14) | class StackBasedLinkedList { method constructor (line 15) | constructor() { method push (line 18) | push(value) { method pop (line 27) | pop() { method clear (line 36) | clear() { method display (line 39) | display() { FILE: javascript/09_queue/CircularQueueBasedOnLinkedList.js class Node (line 7) | class Node { method constructor (line 8) | constructor(element) { class CircularQueue (line 14) | class CircularQueue { method constructor (line 15) | constructor() { method enqueue (line 20) | enqueue(value) { method dequeue (line 36) | dequeue() { method display (line 51) | display() { FILE: javascript/09_queue/QueueBasedOnLinkedList.js class Node (line 7) | class Node { method constructor (line 8) | constructor(element) { class QueueBasedOnLinkedList (line 14) | class QueueBasedOnLinkedList { method constructor (line 15) | constructor() { method enqueue (line 20) | enqueue(value) { method dequeue (line 30) | dequeue() { FILE: javascript/12_sorts/KthNum.js function kthNum (line 6) | function kthNum(arr, k) { function partition (line 22) | function partition(arr, start, end) { function swap (line 35) | function swap(arr, i, j) { FILE: javascript/13_sorts/bucketSort.js function bucketSort (line 6) | function bucketSort(array, bucketSize = 5) { function createBuckets (line 14) | function createBuckets(array, bucketSize) { function sortBuckets (line 40) | function sortBuckets(buckets) { function insertionSort (line 52) | function insertionSort(array) { FILE: javascript/13_sorts/countingSort.js function findMaxValue (line 30) | function findMaxValue(array) { FILE: javascript/17_skiplist/SkipList.js constant MAX_LEVEL (line 6) | const MAX_LEVEL = 16; class Node (line 8) | class Node { method constructor (line 9) | constructor({ class SkipList (line 20) | class SkipList{ method constructor (line 21) | constructor() { method randomLevel (line 25) | randomLevel() { method insert (line 34) | insert(value) { method find (line 56) | find(value) { method remove (line 71) | remove(value) { method printAll (line 94) | printAll() { function test (line 104) | function test() { FILE: javascript/19_hashTable/hashtable.js class HashTable (line 11) | class HashTable { method constructor (line 12) | constructor() { method hash (line 23) | hash(string) { method isCresh (line 32) | isCresh(item) { method put (line 39) | put(item) { method get (line 60) | get(key) { method remove (line 69) | remove(key) { method clear (line 81) | clear() { method print (line 84) | print() { class HashTableBaseMap (line 101) | class HashTableBaseMap { method constructor (line 102) | constructor() { method hash (line 112) | hash(string) { method isCresh (line 121) | isCresh(item) { method put (line 128) | put(item) { method get (line 149) | get(key) { method remove (line 158) | remove(key) { method clear (line 170) | clear() { method print (line 173) | print() { function baseTest (line 189) | function baseTest() { function ordKeyTest (line 221) | function ordKeyTest() { function randKeyTest (line 248) | function randKeyTest() { function randKeyTestFromObj (line 277) | function randKeyTestFromObj() { function randKeyTestFromMap (line 305) | function randKeyTestFromMap() { function randomString (line 331) | function randomString(len) { FILE: javascript/23_tree/binary_tree.js class Node (line 1) | class Node { method constructor (line 2) | constructor(value) { class SearchTree (line 13) | class SearchTree { method constructor (line 14) | constructor() { method insert (line 17) | insert(num) { method remove (line 31) | remove(num) { method print (line 106) | print() { method find (line 122) | find(num) { method getPrev (line 130) | getPrev(num, find = false) { function baseTest (line 175) | function baseTest() { function delTest (line 194) | function delTest() { FILE: javascript/28_heapsort/heap-sort.js class HeapSort (line 8) | class HeapSort { method constructor (line 9) | constructor(originArray) { method buildHeap (line 13) | buildHeap() { method heapify (line 22) | heapify(arr, len, i) { method sort (line 39) | sort() { method swap (line 50) | swap(arr, i, max) { FILE: javascript/28_heapsort/heap.js class HeapNode (line 4) | class HeapNode { method constructor (line 5) | constructor(num, item) { class Heap (line 11) | class Heap { method constructor (line 12) | constructor(arr = []) { method insert (line 48) | insert(node) { method getMax (line 61) | getMax() { function HeapTest (line 77) | function HeapTest() { function createTest (line 96) | function createTest() { function isHeapArr (line 109) | function isHeapArr(arr) { FILE: javascript/35_trie/trie.js class TrieNode (line 3) | class TrieNode { method constructor (line 4) | constructor(data){ class TrieTree (line 11) | class TrieTree { method constructor (line 13) | constructor(data){ method insert (line 17) | insert (text) { method find (line 30) | find (text) { FILE: javascript/36_ac_automata/ac_automata.js class ACNode (line 4) | class ACNode { method constructor (line 5) | constructor(data){ class ACTree (line 14) | class ACTree { method constructor (line 16) | constructor(data){ method insert (line 20) | insert (text) { method buildFailurePointer (line 34) | buildFailurePointer() { method match (line 69) | match (text) { FILE: javascript/36_ac_automata/ac_automata_unicode.js class ACNode (line 2) | class ACNode { method constructor (line 3) | constructor(data){ class ACTree (line 12) | class ACTree { method constructor (line 14) | constructor(data){ method insert (line 18) | insert (text) { method buildFailurePointer (line 31) | buildFailurePointer() { method match (line 65) | match (text) { function match (line 92) | function match( text, patterns) { FILE: javascript/42_dynamic_programming/levenshtein_distance.js function lsDist (line 1) | function lsDist(str1, str2) { FILE: javascript/43_topological_sorting/dsf.js function Graph (line 2) | function Graph() { FILE: javascript/45_bitmap/bitmap.js class BitMap (line 2) | class BitMap { method constructor (line 3) | constructor(n) { method get (line 9) | get(k) { method set (line 18) | set(k) { FILE: php/05_array/array.php class MyArray (line 12) | class MyArray method __construct (line 25) | public function __construct($capacity) method checkIfFull (line 40) | public function checkIfFull() method checkOutOfRange (line 53) | private function checkOutOfRange($index) method insert (line 67) | public function insert($index, $value) method delete (line 93) | public function delete($index) method find (line 119) | public function find($index) method printData (line 134) | public function printData() FILE: php/06_linkedlist/SingleLinkedList.php class SingleLinkedList (line 18) | class SingleLinkedList method __construct (line 41) | public function __construct($head = null) method getLength (line 57) | public function getLength() method insert (line 69) | public function insert($data) method delete (line 81) | public function delete(SingleLinkedListNode $node) method getNodeByIndex (line 108) | public function getNodeByIndex($index) method getPreNode (line 129) | public function getPreNode(SingleLinkedListNode $node) method printList (line 155) | public function printList() method printListSimple (line 179) | public function printListSimple() method insertDataAfter (line 204) | public function insertDataAfter(SingleLinkedListNode $originNode, $data) method insertDataBefore (line 235) | public function insertDataBefore(SingleLinkedListNode $originNode, $data) method insertNodeAfter (line 256) | public function insertNodeAfter(SingleLinkedListNode $originNode, Sing... method buildHasCircleList (line 274) | public function buildHasCircleList() FILE: php/06_linkedlist/SingleLinkedListNode.php class SingleLinkedListNode (line 18) | class SingleLinkedListNode method __construct (line 39) | public function __construct($data = null) FILE: php/06_linkedlist/main.php function isPalindrome (line 18) | function isPalindrome(SingleLinkedList $list) FILE: php/07_linkedlist/main.php class SingleLinkedListAlgo (line 27) | Class SingleLinkedListAlgo method __construct (line 43) | public function __construct(SingleLinkedList $list = null) method setList (line 53) | public function setList(SingleLinkedList $list) method reverse (line 68) | public function reverse() method checkCircle (line 104) | public function checkCircle() method mergerSortedList (line 134) | public function mergerSortedList(SingleLinkedList $listA, SingleLinked... method deleteLastKth (line 180) | public function deleteLastKth($index) method findMiddleNode (line 221) | public function findMiddleNode() FILE: php/08_stack/Compute.php function expression (line 6) | function expression($str) function compute (line 66) | function compute(&$numStack, &$operStack){ FILE: php/08_stack/StackOnLinkedList.php class StackOnLinkedList (line 13) | class StackOnLinkedList method __construct (line 33) | public function __construct() method pop (line 44) | public function pop() method push (line 63) | public function push($data) method pushNode (line 75) | public function pushNode(SingleLinkedListNode $node) method pushData (line 95) | public function pushData($data) method top (line 111) | public function top() method printSelf (line 123) | public function printSelf() method getLength (line 145) | public function getLength() method isEmpty (line 155) | public function isEmpty() FILE: php/09_queue/QueueOnLinkedList.php class QueueOnLinkedList (line 17) | class QueueOnLinkedList method __construct (line 43) | public function __construct() method enqueue (line 56) | public function enqueue($data) method dequeue (line 72) | public function dequeue() method getLength (line 91) | public function getLength() method printSelf (line 99) | public function printSelf() FILE: php/09_queue/Sequential.php class LoopQueue (line 3) | class LoopQueue method __construct (line 13) | public function __construct($size = 10) method enQueue (line 21) | public function enQueue($data) method deQueue (line 30) | public function deQueue() method getLength (line 41) | public function getLength() FILE: php/10_heap/Heap.php class Heap (line 12) | class Heap method __construct (line 19) | public function __construct($size = 0, $heapType = 1) method insert (line 29) | public function insert($data) method isFull (line 47) | public function isFull() method isEmpty (line 57) | public function isEmpty(){ method peak (line 61) | public function peak(){ method insertOnly (line 70) | public function insertOnly($data) method deleteFirst (line 86) | public function deleteFirst() method heapFromOneToDown (line 108) | protected function heapFromOneToDown($i) method heapAll (line 168) | public function heapAll() method heapSort (line 179) | public function heapSort() method smallHeapLast (line 214) | public function smallHeapLast() method smallHeapFirst (line 239) | public function smallHeapFirst() method bigHeapFirst (line 271) | public function bigHeapFirst() method bigHeapLast (line 300) | public function bigHeapLast() method topn (line 314) | public function topn($data) FILE: php/10_heap/findmiddle.php function findMiddle (line 17) | function findMiddle($arr) function midPeak (line 51) | function midPeak($heap1, $heap2) FILE: php/11_sort/Sort.php function bubbleSort (line 3) | function bubbleSort(&$arr) function insertionSort (line 25) | function insertionSort(&$arr) function selectionSort (line 46) | function selectionSort(&$arr) FILE: php/12_sort/mergeSort.php function mergeSort (line 17) | function mergeSort(array $arr, $p, $r) function mergeSortRecursive (line 23) | function mergeSortRecursive(array $arr, $p, $r) function merge (line 40) | function merge(array $left, array $right) FILE: php/12_sort/quicksort.php function quickSort (line 3) | function quickSort(array &$a) function quickSortInternally (line 10) | function quickSortInternally(array &$a, int $l, int $r) function partition (line 19) | function partition(&$a, $l, $r): int FILE: php/13_sort/bucketSort.php function bucketSort (line 22) | function bucketSort(array $numbers) { FILE: php/13_sort/countingSort.php function countingSort (line 11) | function countingSort(array $score) { FILE: php/13_sort/radixSort.php function radixSort (line 31) | function radixSort(array &$numbers,$loop) { FILE: php/15_binary/binary.php function binarySearch (line 13) | function binarySearch(array $numbers, $find) function search (line 20) | function search(array $numbers, $low, $high, $find) function squareRoot (line 52) | function squareRoot($number) function getDecimalPlaces (line 86) | function getDecimalPlaces($number) FILE: php/16_binary/binary.php function findFirstEqual (line 11) | function findFirstEqual(array $numbers,$find) { function findLastEqual (line 46) | function findLastEqual(array $numbers,$find) { function findFirstGreaterEqual (line 82) | function findFirstGreaterEqual(array $numbers,$find) { function findLastLessEqual (line 110) | function findLastLessEqual(array $numbers,$find) { function searchCircularArray (line 141) | function searchCircularArray(array $numbers,$find) { FILE: php/17_skiplist/skipList.php class SNode (line 3) | class SNode method __construct (line 11) | public function __construct($data = null) method getMaxLevel (line 17) | public function getMaxLevel() class SkipList (line 23) | class SkipList method __construct (line 31) | public function __construct(int $indexLevel) method addData (line 37) | public function addData($data) method deleteData (line 52) | public function deleteData($data) method findData (line 68) | public function findData($data) method getRandomLevel (line 81) | protected function getRandomLevel() FILE: php/24_tree/Tree.php class Tree (line 5) | class Tree method __construct (line 18) | public function __construct($headData = null) method find (line 30) | public function find($data) method insert (line 56) | public function insert($data) method delete (line 87) | public function delete($data) method preOrder (line 143) | public function preOrder($node) method inOrder (line 157) | public function inOrder($node){ method postOrder (line 171) | public function postOrder($node){ method levelOrder (line 190) | public function levelOrder($queue, $index = 0) FILE: php/24_tree/TreeNode.php class TreeNode (line 5) | class TreeNode method __construct (line 30) | public function __construct($data = null) FILE: php/38_divide_and_conquer/matrix_production.php function popRow (line 3) | function popRow(&$matrix) function popColumn (line 8) | function popColumn(&$matrix) function countProduction (line 22) | function countProduction($row, $column) function merger (line 30) | function merger($value1, $value2, $value3, $value4) function matrixProduction (line 48) | function matrixProduction($matrix1, $matrix2) FILE: php/39_backtracking/queens.php class Queen (line 7) | class Queen method cal8queens (line 11) | function cal8queens($row) method isOk (line 28) | function isOk($row, $column) method printQueens (line 58) | function printQueens() FILE: php/Stack/Compute.php function expression (line 6) | function expression($str) function compute (line 58) | function compute(&$numStack, &$operStack){ FILE: python/05_array/myarray.py class MyArray (line 9) | class MyArray: method __init__ (line 14) | def __init__(self, capacity: int): method __getitem__ (line 18) | def __getitem__(self, position: int) -> object: method __setitem__ (line 21) | def __setitem__(self, index: int, value: object): method __len__ (line 24) | def __len__(self) -> int: method __iter__ (line 27) | def __iter__(self): method find (line 31) | def find(self, index: int) -> object: method delete (line 37) | def delete(self, index: int) -> bool: method insert (line 44) | def insert(self, index: int, value: int) -> bool: method print_all (line 50) | def print_all(self): function test_myarray (line 55) | def test_myarray(): FILE: python/06_linkedlist/LRUCache.py class DbListNode (line 2) | class DbListNode(object): method __init__ (line 3) | def __init__(self, x, y): class LRUCache (line 10) | class LRUCache: method __init__ (line 26) | def __init__(self, capacity: int): method get (line 35) | def get(self, key: int) -> int: method put (line 53) | def put(self, key: int, value: int) -> None: method __repr__ (line 83) | def __repr__(self): FILE: python/06_linkedlist/palindrome.py function reverse (line 10) | def reverse(head): function is_palindrome (line 20) | def is_palindrome(l): FILE: python/06_linkedlist/singlyLinkedList.py class Node (line 7) | class Node(object): method __init__ (line 10) | def __init__(self, data, next_node=None): method data (line 20) | def data(self): method data (line 28) | def data(self, data): method next_node (line 36) | def next_node(self): method next_node (line 44) | def next_node(self, next_node): class SinglyLinkedList (line 52) | class SinglyLinkedList(object): method __init__ (line 55) | def __init__(self): method find_by_value (line 59) | def find_by_value(self, value): method find_by_index (line 71) | def find_by_index(self, index): method insert_to_head (line 85) | def insert_to_head(self, value): method insert_after (line 94) | def insert_after(self, node, value): method insert_before (line 107) | def insert_before(self, node, value): method delete_by_node (line 133) | def delete_by_node(self, node): method delete_by_value (line 156) | def delete_by_value(self, value): method delete_last_n_node (line 180) | def delete_last_n_node(self, n): method find_mid_node (line 203) | def find_mid_node(self): method create_node (line 219) | def create_node(self, value): method print_all (line 228) | def print_all(self): method reversed_self (line 239) | def reversed_self(self): method __reversed_with_two_node (line 252) | def __reversed_with_two_node(self, pre, node): method has_ring (line 266) | def has_ring(self): FILE: python/06_linkedlist/singly_linked_list.py class Node (line 10) | class Node: method __init__ (line 12) | def __init__(self, data: int, next_node=None): class SinglyLinkedList (line 17) | class SinglyLinkedList: method __init__ (line 19) | def __init__(self): method find_by_value (line 22) | def find_by_value(self, value: int) -> Optional[Node]: method find_by_index (line 28) | def find_by_index(self, index: int) -> Optional[Node]: method insert_value_to_head (line 36) | def insert_value_to_head(self, value: int): method insert_node_to_head (line 40) | def insert_node_to_head(self, new_node: Node): method insert_value_after (line 45) | def insert_value_after(self, node: Node, value: int): method insert_node_after (line 49) | def insert_node_after(self, node: Node, new_node: Node): method insert_value_before (line 55) | def insert_value_before(self, node: Node, value: int): method insert_node_before (line 59) | def insert_node_before(self, node: Node, new_node: Node): method delete_by_node (line 73) | def delete_by_node(self, node: Node): method delete_by_value (line 88) | def delete_by_value(self, value: int): method __repr__ (line 103) | def __repr__(self) -> str: method __iter__ (line 112) | def __iter__(self): method print_all (line 118) | def print_all(self): FILE: python/07_linkedlist/linked_list_algo.py class Node (line 14) | class Node: method __init__ (line 16) | def __init__(self, data: int, next=None): function reverse (line 23) | def reverse(head: Node) -> Optional[Node]: function has_cycle (line 32) | def has_cycle(head: Node) -> bool: function merge_sorted_list (line 43) | def merge_sorted_list(l1: Node, l2: Node) -> Optional[Node]: function remove_nth_from_end (line 62) | def remove_nth_from_end(head: Node, n: int) -> Optional[Node]: function find_middle_node (line 79) | def find_middle_node(head: Node) -> Optional[Node]: function print_all (line 86) | def print_all(head: Node): FILE: python/08_stack/linked_stack.py class Node (line 10) | class Node: method __init__ (line 12) | def __init__(self, data: int, next=None): class LinkedStack (line 17) | class LinkedStack: method __init__ (line 20) | def __init__(self): method push (line 23) | def push(self, value: int): method pop (line 28) | def pop(self) -> Optional[int]: method __repr__ (line 34) | def __repr__(self) -> str: FILE: python/08_stack/simple_browser.py class NewLinkedStack (line 16) | class NewLinkedStack(LinkedStack): method is_empty (line 18) | def is_empty(self): class Browser (line 22) | class Browser(): method __init__ (line 24) | def __init__(self): method can_forward (line 28) | def can_forward(self): method can_back (line 34) | def can_back(self): method open (line 40) | def open(self, url): method back (line 44) | def back(self): method forward (line 52) | def forward(self): FILE: python/09_queue/array_queue.py class ArrayQueue (line 10) | class ArrayQueue: method __init__ (line 12) | def __init__(self, capacity: int): method enqueue (line 18) | def enqueue(self, item: str) -> bool: method dequeue (line 32) | def dequeue(self) -> Optional[str]: method __repr__ (line 40) | def __repr__(self) -> str: FILE: python/09_queue/circular_queue.py class CircularQueue (line 8) | class CircularQueue: method __init__ (line 10) | def __init__(self, capacity): method enqueue (line 16) | def enqueue(self, item: str) -> bool: method dequeue (line 24) | def dequeue(self) -> Optional[str]: method __repr__ (line 30) | def __repr__(self) -> str: FILE: python/09_queue/dynamic_array_queue.py class DynamicArrayQueue (line 7) | class DynamicArrayQueue: method __init__ (line 9) | def __init__(self, capacity: int): method enqueue (line 15) | def enqueue(self, item: str) -> bool: method dequeue (line 30) | def dequeue(self) -> Optional[str]: method __repr__ (line 36) | def __repr__(self) -> str: FILE: python/09_queue/linked_queue.py class Node (line 9) | class Node: method __init__ (line 11) | def __init__(self, data: str, next=None): class LinkedQueue (line 15) | class LinkedQueue: method __init__ (line 17) | def __init__(self): method enqueue (line 21) | def enqueue(self, value: str): method dequeue (line 29) | def dequeue(self) -> Optional[str]: method __repr__ (line 37) | def __repr__(self) -> str: FILE: python/11_sorts/sorts.py function bubble_sort (line 12) | def bubble_sort(a: List[int]): function insertion_sort (line 28) | def insertion_sort(a: List[int]): function selection_sort (line 43) | def selection_sort(a: List[int]): function test_bubble_sort (line 58) | def test_bubble_sort(): function test_insertion_sort (line 70) | def test_insertion_sort(): function test_selection_sort (line 82) | def test_selection_sort(): FILE: python/12_sorts/merge_sort.py function merge_sort (line 8) | def merge_sort(a: List[int]): function _merge_sort_between (line 12) | def _merge_sort_between(a: List[int], low: int, high: int): function _merge (line 21) | def _merge(a: List[int], low: int, mid: int, high: int): function test_merge_sort (line 38) | def test_merge_sort(): FILE: python/12_sorts/quick_sort.py function quick_sort (line 9) | def quick_sort(a: List[int]): function _quick_sort_between (line 13) | def _quick_sort_between(a: List[int], low: int, high: int): function _partition (line 24) | def _partition(a: List[int], low: int, high: int): function test_quick_sort (line 34) | def test_quick_sort(): FILE: python/12_sorts/quicksort_twoway.py function QuickSort (line 4) | def QuickSort(arr): FILE: python/14_sorts/counting_sort.py function counting_sort (line 10) | def counting_sort(a: List[int]): FILE: python/15_bsearch/bsearch.py function bsearch (line 7) | def bsearch(nums: List[int], target: int) -> int: FILE: python/15_bsearch/bsearch_recursion.py function bsearch (line 8) | def bsearch(nums: List[int], target: int) -> int: function bsearch_internally (line 12) | def bsearch_internally(nums: List[int], low: int, high: int, target: int... FILE: python/16_bsearch/bsearch_variants.py function bsearch_left (line 8) | def bsearch_left(nums: List[int], target: int) -> int: function bsearch_right (line 26) | def bsearch_right(nums: List[int], target: int) -> int: function bsearch_left_not_less (line 44) | def bsearch_left_not_less(nums: List[int], target: int) -> int: function bsearch_right_not_greater (line 61) | def bsearch_right_not_greater(nums: List[int], target: int) -> int: FILE: python/17_skiplist/skip_list.py class ListNode (line 14) | class ListNode: method __init__ (line 16) | def __init__(self, data: Optional[int] = None): class SkipList (line 20) | class SkipList: method __init__ (line 24) | def __init__(self): method find (line 29) | def find(self, value: int) -> Optional[ListNode]: method insert (line 37) | def insert(self, value: int): method delete (line 55) | def delete(self, value): method _random_level (line 68) | def _random_level(self, p: float = 0.5) -> int: method __repr__ (line 74) | def __repr__(self) -> str: FILE: python/17_skiplist/skip_list_comments.py class SkipListNode (line 4) | class SkipListNode(object): method __init__ (line 5) | def __init__(self, val, high=1): class SkipList (line 12) | class SkipList(object): method __init__ (line 21) | def __init__(self): method find (line 29) | def find(self, val): method insert (line 42) | def insert(self, val): method delete (line 70) | def delete(self, val): method randomLevel (line 88) | def randomLevel(self, p=0.25): method __repr__ (line 99) | def __repr__(self): FILE: python/23_binarytree/binary_search_tree.py class TreeNode (line 8) | class TreeNode: method __init__ (line 9) | def __init__(self, val=None): class BinarySearchTree (line 16) | class BinarySearchTree: method __init__ (line 17) | def __init__(self, val_list=[]): method insert (line 22) | def insert(self, data): method search (line 51) | def search(self, data): method delete (line 74) | def delete(self, data): method _del (line 92) | def _del(self, node): method get_min (line 158) | def get_min(self): method get_max (line 171) | def get_max(self): method in_order (line 184) | def in_order(self): method _in_order (line 194) | def _in_order(self, node): method __repr__ (line 206) | def __repr__(self): method _bfs (line 211) | def _bfs(self): method _draw_tree (line 235) | def _draw_tree(self): FILE: python/23_binarytree/binary_tree.py class TreeNode (line 10) | class TreeNode(Generic[T]): method __init__ (line 11) | def __init__(self, value: T): function pre_order (line 18) | def pre_order(root: Optional[TreeNode[T]]) -> Generator[T, None, None]: function in_order (line 25) | def in_order(root: Optional[TreeNode[T]]) -> Generator[T, None, None]: function post_order (line 32) | def post_order(root: Optional[TreeNode[T]]) -> Generator[T, None, None]: FILE: python/24_tree/binary_search_tree.py class TreeNode (line 8) | class TreeNode: method __init__ (line 9) | def __init__(self, value: int): class BinarySearchTree (line 14) | class BinarySearchTree: method __init__ (line 15) | def __init__(self): method find (line 18) | def find(self, value: int) -> Optional[TreeNode]: method insert (line 24) | def insert(self, value: int): method delete (line 39) | def delete(self, value: int): FILE: python/26_red_black_tree/red_black_tree.py class TreeNode (line 11) | class TreeNode: method __init__ (line 12) | def __init__(self, val=None, color=None): method is_black (line 21) | def is_black(self): method set_black (line 24) | def set_black(self): method set_red (line 28) | def set_red(self): class RedBlackTree (line 32) | class RedBlackTree: method __init__ (line 44) | def __init__(self, val_list=None): method search (line 54) | def search(self, val): method insert (line 73) | def insert(self, val): method _insert_fixup (line 107) | def _insert_fixup(self, node): method delete (line 148) | def delete(self, val): method _delete_node (line 163) | def _delete_node(self, node): method _delete_fixup (line 195) | def _delete_fixup(self, node): method _transplant (line 266) | def _transplant(self, n1, n2): method rotate_l (line 288) | def rotate_l(self, node): method rotate_r (line 321) | def rotate_r(self, node): method bro (line 355) | def bro(node): method parent (line 371) | def parent(node): method children_count (line 382) | def children_count(self, node): method draw_img (line 390) | def draw_img(self, img_name='Red_Black_Tree.png'): FILE: python/28_binary_heap/binary_heap.py class BinaryHeap (line 8) | class BinaryHeap: method __init__ (line 12) | def __init__(self, data=None, capacity=100): method heapify (line 23) | def heapify(self): method _heapify (line 30) | def _heapify(self, data, tail_idx): method _heap_down (line 48) | def _heap_down(data, idx, tail_idx): method insert (line 77) | def insert(self, num): method _insert (line 90) | def _insert(data, num): method get_top (line 116) | def get_top(self): method remove_top (line 125) | def remove_top(self): method _remove_top (line 137) | def _remove_top(data): method _type_assert (line 160) | def _type_assert(nums): method _draw_heap (line 166) | def _draw_heap(data): method __repr__ (line 188) | def __repr__(self): FILE: python/28_binary_heap/binary_heap_sort.py class BinaryHeapSort (line 7) | class BinaryHeapSort(BinaryHeap): method __init__ (line 8) | def __init__(self): method sort (line 11) | def sort(self, nums): FILE: python/28_binary_heap/heap.py class Heap (line 8) | class Heap: method __init__ (line 9) | def __init__(self, nums=None, capacity=100): method _heapify (line 19) | def _heapify(self): method _heap_down (line 29) | def _heap_down(self, idx): method insert (line 32) | def insert(self, num): method get_top (line 35) | def get_top(self): method remove_top (line 40) | def remove_top(self): method get_data (line 51) | def get_data(self): method get_length (line 54) | def get_length(self): method _draw_heap (line 58) | def _draw_heap(data): method __repr__ (line 80) | def __repr__(self): class MaxHeap (line 84) | class MaxHeap(Heap): method _heap_down (line 85) | def _heap_down(self, idx): method insert (line 106) | def insert(self, num): class MinHeap (line 126) | class MinHeap(Heap): method _heap_down (line 127) | def _heap_down(self, idx): method insert (line 148) | def insert(self, num): FILE: python/28_binary_heap/priority_queue.py class QueueNode (line 7) | class QueueNode: method __init__ (line 8) | def __init__(self, priority, data=None): method __repr__ (line 13) | def __repr__(self): class PriorityQueue (line 17) | class PriorityQueue: method __init__ (line 18) | def __init__(self, capacity=100): method enqueue (line 23) | def enqueue(self, priority, data=None): method dequeue (line 43) | def dequeue(self): method get_length (line 72) | def get_length(self): method _draw_heap (line 76) | def _draw_heap(data): method __repr__ (line 98) | def __repr__(self): FILE: python/28_binary_heap/top_k.py function top_k (line 8) | def top_k(nums, k): FILE: python/28_heap/heap.py class Heap (line 9) | class Heap: method __init__ (line 10) | def __init__(self, capacity: int): method _parent (line 16) | def _parent(cls, child_index: int) -> int: method _left (line 21) | def _left(cls, parent_index: int) -> int: method _right (line 26) | def _right(cls, parent_index: int) -> int: method _siftup (line 30) | def _siftup(self) -> None: method _siftdown (line 37) | def _siftdown(cls, a: List[int], count: int, root_index: int = 1) -> N... method insert (line 49) | def insert(self, value: int) -> None: method remove_max (line 55) | def remove_max(self) -> Optional[int]: method build_heap (line 64) | def build_heap(cls, a: List[int]) -> None: method sort (line 70) | def sort(cls, a: List[int]) -> None: method __repr__ (line 79) | def __repr__(self): FILE: python/28_heap/min_heap.py class Heap (line 1) | class Heap(object): method __init__ (line 9) | def __init__(self, nums): method _siftup (line 12) | def _siftup(self, pos): method _siftdown (line 36) | def _siftdown(self, start, pos): method heapify (line 53) | def heapify(self): method heappop (line 67) | def heappop(self): method heappush (line 81) | def heappush(self, val): method __repr__ (line 90) | def __repr__(self): FILE: python/31_bfs_dfs/bfs_dfs.py class Graph (line 10) | class Graph: method __init__ (line 12) | def __init__(self, num_vertices: int): method add_edge (line 16) | def add_edge(self, s: int, t: int) -> None: method _generate_path (line 20) | def _generate_path(self, s: int, t: int, prev: List[Optional[int]]) ->... method bfs (line 25) | def bfs(self, s: int, t: int) -> IO[str]: method dfs (line 48) | def dfs(self, s: int, t: int) -> IO[str]: FILE: python/31_bfs_dfs/graph.py class Undigraph (line 4) | class Undigraph(object): method __init__ (line 7) | def __init__(self, vertex_num): method add_edge (line 13) | def add_edge(self, s, t): method __len__ (line 20) | def __len__(self): method __getitem__ (line 23) | def __getitem__(self, ind): method __repr__ (line 28) | def __repr__(self): method __str__ (line 31) | def __str__(self): class Digraph (line 35) | class Digraph(object): method __init__ (line 38) | def __init__(self, vertex_num): method add_edge (line 44) | def add_edge(self, frm, to): method __len__ (line 49) | def __len__(self): method __getitem__ (line 52) | def __getitem__(self, ind): method __repr__ (line 57) | def __repr__(self): method __str__ (line 60) | def __str__(self): FILE: python/31_bfs_dfs/graph_application.py function find_vertex_by_degree (line 8) | def find_vertex_by_degree(graph, s, degree): FILE: python/32_bf_rk/bf_rk.py function bf (line 7) | def bf(main, pattern): function simple_hash (line 32) | def simple_hash(s, start, end): function rk (line 49) | def rk(main, pattern): FILE: python/33_bm/bm.py function _generate_bad_character_table (line 11) | def _generate_bad_character_table(pattern: str) -> List[int]: function _generate_good_suffix_table (line 18) | def _generate_good_suffix_table(pattern: str) -> Tuple[List[bool], List[... function _move_by_good_suffix (line 40) | def _move_by_good_suffix(bad_character_index: int, suffix: List[int], pr... function bm (line 49) | def bm(s: str, pattern: str) -> int: FILE: python/33_bm/bm_.py function bm (line 7) | def bm(main, pattern): function generate_bc (line 58) | def generate_bc(pattern, m, bc): function generate_gs (line 70) | def generate_gs(pattern, m, suffix, prefix): function move_by_gs (line 91) | def move_by_gs(j, m, suffix, prefix): FILE: python/34_kmp/kmp.py function kmp (line 9) | def kmp(s: int, pattern: int) -> int: function _get_partial_match_table (line 22) | def _get_partial_match_table(pattern: int) -> List[int]: FILE: python/34_kmp/kmp_.py function kmp (line 5) | def kmp(main, pattern): function get_next (line 38) | def get_next(pattern): FILE: python/35_trie/trie.py class TrieNode (line 5) | class TrieNode: method __init__ (line 6) | def __init__(self, data: str): class Trie (line 12) | class Trie: method __init__ (line 13) | def __init__(self): method insert (line 16) | def insert(self, text: str) -> None: method find (line 24) | def find(self, pattern: str) -> bool: FILE: python/35_trie/trie_.py class Node (line 10) | class Node: method __init__ (line 11) | def __init__(self, c): method insert_child (line 17) | def insert_child(self, c): method _insert_child (line 20) | def _insert_child(self, node): method has_child (line 38) | def has_child(self, c): method get_child (line 41) | def get_child(self, c): method _find_insert_idx (line 62) | def _find_insert_idx(self, v): method __repr__ (line 83) | def __repr__(self): class Trie (line 88) | class Trie: method __init__ (line 89) | def __init__(self): method gen_tree (line 92) | def gen_tree(self, string_list): method search (line 109) | def search(self, pattern): method draw_img (line 129) | def draw_img(self, img_name='Trie.png'): FILE: python/36_ac_automata/ac_automata.py class ACNode (line 10) | class ACNode: method __init__ (line 11) | def __init__(self, data: str): class ACAutomata (line 19) | class ACAutomata: method __init__ (line 20) | def __init__(self): method _build_suffix_link (line 23) | def _build_suffix_link(self) -> None: method _insert (line 44) | def _insert(self, text: str) -> None: method insert (line 53) | def insert(self, patterns: List[str]) -> None: method match (line 58) | def match(self, text: str) -> None: FILE: python/36_ac_automata/ac_automata_.py class ACNode (line 8) | class ACNode(Node): method __init__ (line 9) | def __init__(self, c: str): method insert_child (line 14) | def insert_child(self, c: str): class ACTrie (line 18) | class ACTrie(Trie): method __init__ (line 19) | def __init__(self): function ac_automata (line 23) | def ac_automata(main: str, ac_trie: ACTrie) -> list: function build_failure_pointer (line 45) | def build_failure_pointer(ac_trie: ACTrie) -> None: FILE: python/38_divide_and_conquer/merge_sort_counting.py function merge_sort_counting (line 7) | def merge_sort_counting(nums, start, end): function merge (line 17) | def merge(nums, start, mid, end): FILE: python/39_back_track/01_bag.py function bag (line 11) | def bag(capacity: int, cur_weight: int, items_info: List, pick_idx: int): function get_value (line 36) | def get_value(items_info: List, pick_items: List): FILE: python/39_back_track/eight_queens.py function eight_queens (line 11) | def eight_queens(cur_column: int): function is_valid_pos (line 29) | def is_valid_pos(cur_column: int, pos: int) -> bool: FILE: python/39_back_track/permutations.py function permutations (line 9) | def permutations(nums: List, n: int, pick_count: int): FILE: python/39_back_track/regex.py function rmatch (line 7) | def rmatch(r_idx: int, m_idx: int, regex: str, main: str): FILE: python/39_backtracking/backtracking.py function eight_queens (line 7) | def eight_queens() -> None: FILE: python/40_dynamic_programming/01_bag.py function bag (line 7) | def bag(items_info: List[int], capacity: int) -> int: function bag_with_max_value (line 33) | def bag_with_max_value(items_info: List[Tuple[int, int]], capacity: int)... FILE: python/40_dynamic_programming/knapsack.py function knapsack01 (line 7) | def knapsack01(weights: List[int], values: List[int], capacity: int) -> ... FILE: python/40_dynamic_programming/yh_triangle.py function yh_triangle (line 9) | def yh_triangle(nums: List[Layer_nums]) -> int: function yh_triangle_space_optimization (line 32) | def yh_triangle_space_optimization(nums: List[Layer_nums]) -> int: function yh_triangle_bottom_up (line 49) | def yh_triangle_bottom_up(nums: List[Layer_nums]) -> int: FILE: python/41_dynamic_programming/coins_problem.py function coins_dp (line 7) | def coins_dp(values: List[int], target: int) -> int: function coins_backtracking (line 29) | def coins_backtracking(values: List[int], target: int, cur_value: int, c... FILE: python/41_dynamic_programming/min_dist.py function min_dist (line 8) | def min_dist(weights: List[List[int]]) -> int: function min_dist_recur (line 24) | def min_dist_recur(weights: List[List[int]]) -> int: FILE: python/42_dynamic_programming/longest_increasing_subsequence.py function longest_increasing_subsequence (line 7) | def longest_increasing_subsequence(nums: List[int]) -> int: FILE: python/42_dynamic_programming/min_edit_dist.py function levenshtein_dp (line 5) | def levenshtein_dp(s: str, t: str) -> int: function common_substring_dp (line 33) | def common_substring_dp(s: str, t: str) -> int: FILE: python/43_topological_sorting/topological_sorting.py class Graph (line 8) | class Graph: method __init__ (line 9) | def __init__(self, num_vertices: int): method add_edge (line 13) | def add_edge(self, s: int, t: int) -> None: method tsort_by_kahn (line 16) | def tsort_by_kahn(self) -> None: method tsort_by_dfs (line 32) | def tsort_by_dfs(self) -> None: FILE: python/44_shortest_path/dijkstra.py class Graph (line 8) | class Graph: method __init__ (line 9) | def __init__(self, vertex_count: int) -> None: method add_edge (line 12) | def add_edge(self, s: int, t: int, w: int) -> None: method __len__ (line 16) | def __len__(self) -> int: class Vertex (line 20) | class Vertex: method __init__ (line 21) | def __init__(self, v: int, dist: int) -> None: method __gt__ (line 25) | def __gt__(self, other) -> bool: method __repr__ (line 28) | def __repr__(self) -> str: class Edge (line 32) | class Edge: method __init__ (line 33) | def __init__(self, source: int, target: int, weight: int) -> None: class VertexPriorityQueue (line 39) | class VertexPriorityQueue: method __init__ (line 40) | def __init__(self) -> None: method get (line 43) | def get(self) -> Vertex: method put (line 46) | def put(self, v: Vertex) -> None: method empty (line 50) | def empty(self) -> bool: method update_priority (line 53) | def update_priority(self) -> None: method __repr__ (line 56) | def __repr__(self) -> str: function dijkstra (line 60) | def dijkstra(g: Graph, s: int, t: int) -> int: function print_path (line 99) | def print_path(s: int, t: int, p: List[int]) -> Generator[int, None, None]: FILE: python/44_shortest_path/shortest_path.py class Edge (line 11) | class Edge: class Vertex (line 17) | class Vertex: class Graph (line 21) | class Graph: method __init__ (line 22) | def __init__(self, num_vertices: int): method add_edge (line 26) | def add_edge(self, from_vertex: int, to_vertex: int, weight: int) -> N... method dijkstra (line 29) | def dijkstra(self, from_vertex: int, to_vertex: int) -> None: FILE: python/45_bitmap/bitmap.py class Bitmap (line 7) | class Bitmap: method __init__ (line 8) | def __init__(self, num_bits: int): method setbit (line 12) | def setbit(self, k: int) -> None: method getbit (line 16) | def getbit(self, k: int) -> Optional[bool]: FILE: python/array.py class Array (line 6) | class Array(): method __init__ (line 8) | def __init__(self): method find (line 12) | def find(self, index): method delete (line 27) | def delete(self, index): method insert (line 43) | def insert(self, index, value): method insertToTail (line 60) | def insertToTail(self, value): method printAll (line 68) | def printAll(self): FILE: rust/05_array/main.rs type NewArray (line 1) | struct NewArray { method new (line 7) | fn new(capacity: usize) -> NewArray { method find (line 11) | fn find(&self, index: usize) -> i32 { method insert (line 16) | fn insert(&mut self, index: usize, value: i32) -> bool { method remove (line 40) | fn remove(&mut self, index: usize) -> i32 { function main (line 60) | fn main() { FILE: rust/07_linkedlist/linked_list_cycle.rs function has_cycle (line 3) | pub fn has_cycle(head: Option>) -> bool { function main (line 16) | fn main() { FILE: rust/07_linkedlist/merge_two_sorted_lists.rs function merge_two_lists (line 3) | pub fn merge_two_lists(l1: Option>, l2: Option>) -> Option> { function main (line 14) | fn main() { FILE: rust/07_linkedlist/remove_nth_node_from_end_of_list.rs function remove_nth_from_end (line 3) | pub fn remove_nth_from_end(head: Option>, n: i32) -> Optio... function main (line 26) | fn main() { FILE: rust/07_linkedlist/reverse_linked_list.rs function reverse_list (line 3) | pub fn reverse_list(head: Option>) -> Option> { function main (line 18) | fn main() { FILE: rust/07_linkedlist/util/linked_list.rs type ListNode (line 3) | pub struct ListNode { method new (line 10) | fn new(val: i32) -> Self { function to_list (line 18) | pub fn to_list(vec: Vec) -> Option> { FILE: rust/08_stack/simple_browser.rs type Browser (line 6) | struct Browser { method new (line 13) | fn new() -> Self { method open (line 17) | fn open(&mut self, url: &String) { method go_back (line 25) | fn go_back(&mut self) -> String { method go_forward (line 37) | fn go_forward(&mut self) -> String { method can_go_back (line 49) | fn can_go_back(&self) -> bool { method can_go_forward (line 53) | fn can_go_forward(&self) -> bool { method show_url (line 57) | fn show_url(&mut self, url: &String, prefix: String) { method check_current_page (line 62) | fn check_current_page(&self) { function main (line 66) | fn main() { FILE: rust/08_stack/stack_based_on_array.rs type ArrayStack (line 2) | struct ArrayStack { method new (line 8) | fn new() -> Self { method push (line 12) | fn push(&mut self, x: i32) { method pop (line 24) | fn pop(&mut self) { method top (line 30) | fn top(&self) -> i32 { method is_empty (line 35) | fn is_empty(&self) -> bool { function main (line 40) | fn main() { FILE: rust/08_stack/stack_based_on_linked_list.rs type ListNode (line 2) | pub struct ListNode { method new (line 13) | fn new(val: String) -> Self { type LinkedListStack (line 8) | pub struct LinkedListStack { method new (line 19) | pub fn new() -> Self { method push (line 23) | pub fn push(&mut self, x: String) { method pop (line 29) | pub fn pop(&mut self) -> String { method print_all (line 37) | pub fn print_all(&mut self) { method clear (line 48) | pub fn clear(&mut self) { method is_empty (line 52) | pub fn is_empty(&self) -> bool { FILE: rust/09_queue/array_queue.rs type ArrayQueue (line 2) | struct ArrayQueue { method new (line 9) | fn new(n: usize) -> Self { method enqueue (line 17) | fn enqueue(&mut self, num: i32) -> bool { method dequeue (line 36) | fn dequeue(&mut self) -> i32 { method print_all (line 44) | fn print_all(&self) { function main (line 54) | fn main() { FILE: rust/09_queue/circle_queue.rs type CircleQueue (line 2) | struct CircleQueue { method new (line 10) | fn new(n: i32) -> Self { method enqueue (line 19) | fn enqueue(&mut self, num: i32) -> bool { method dequeue (line 26) | fn dequeue(&mut self) -> i32 { method print_all (line 34) | fn print_all(&self) { function main (line 44) | fn main() { FILE: rust/09_queue/linked_list_queue.rs type LinkedListQueue (line 6) | pub struct LinkedListQueue { method new (line 30) | pub fn new() -> Self { method dequeue (line 37) | pub fn dequeue(&mut self) -> i32 { method enqueue (line 45) | pub fn enqueue(&mut self, elt: i32) { type Node (line 11) | pub struct Node { method new (line 17) | fn new(element: i32) -> Self { method into_element (line 24) | fn into_element(self: Box) -> i32 { function main (line 61) | fn main() { FILE: rust/11_sorts/bubble_sort.rs function bubble_sort (line 4) | fn bubble_sort(mut nums: Vec) -> Vec { function main (line 26) | fn main() { FILE: rust/11_sorts/insertion_sort.rs function insertion_sort (line 4) | fn insertion_sort(mut nums: Vec) -> Vec { function main (line 24) | fn main() { FILE: rust/11_sorts/selection_sort.rs function selection_sort (line 4) | fn selection_sort(mut nums: Vec) -> Vec { function main (line 23) | fn main() { FILE: rust/12_sorts/kth_largest.rs function kth_largest (line 1) | pub fn kth_largest(mut nums: Vec, k: i32) -> Option { function partition (line 19) | fn partition(nums: &mut Vec, start: usize, end: usize) -> usize { function swap (line 33) | fn swap(nums: &mut Vec, i: usize, j: usize) { function main (line 41) | fn main() { FILE: rust/12_sorts/merge_sort.rs function merge_sort (line 4) | pub fn merge_sort(mut nums: Vec) -> Vec { function merge_sort_internally (line 12) | fn merge_sort_internally(nums: &mut Vec, start: usize, end: usize) { function merge (line 23) | fn merge(nums: &mut Vec, start: usize, middle: usize, end: usize) { function main (line 54) | fn main() { FILE: rust/12_sorts/quick_sort.rs function quick_sort (line 4) | pub fn quick_sort(mut nums: Vec) -> Vec { function quick_sort_internally (line 12) | fn quick_sort_internally(nums: &mut Vec, start: usize, end: usize) { function partition (line 23) | fn partition(nums: &mut Vec, start: usize, end: usize) -> usize { function swap (line 37) | fn swap(nums: &mut Vec, i: usize, j: usize) { function main (line 45) | fn main() { FILE: rust/13_sorts/bucket_sort.rs function bucket_sort (line 4) | pub fn bucket_sort(mut nums: Vec, step: i32) -> Vec { function quick_sort (line 35) | pub fn quick_sort(mut nums: Vec) -> Vec { function quick_sort_internally (line 43) | fn quick_sort_internally(nums: &mut Vec, start: usize, end: usize) { function partition (line 54) | fn partition(nums: &mut Vec, start: usize, end: usize) -> usize { function swap (line 68) | fn swap(nums: &mut Vec, i: usize, j: usize) { function main (line 76) | fn main() { FILE: rust/13_sorts/counting_sort.rs function counting_sort (line 4) | pub fn counting_sort(mut nums: Vec) -> Vec { function main (line 48) | fn main() { FILE: rust/13_sorts/radix_sort.rs function radix_sort (line 4) | pub fn radix_sort(mut nums: Vec) -> Vec { function max_bit (line 40) | fn max_bit(nums: &Vec) -> i32 { function main (line 54) | fn main() { FILE: rust/13_sorts/sort_string.rs function sort_string (line 1) | fn sort_string(s: String) -> Vec> { function main (line 15) | fn main() { FILE: rust/15_binary_search/binary_search.rs function binary_search (line 2) | pub fn binary_search(nums: Vec, value: i32) -> i32 { function binary_search_recursion (line 22) | pub fn binary_search_recursion(nums: Vec, value: i32) -> i32 { function _recursion (line 28) | fn _recursion(nums: &Vec, low: usize, high: usize, value: i32) -> i... function main (line 41) | fn main() { FILE: rust/15_binary_search/sqrtx.rs function my_sqrt (line 3) | pub fn my_sqrt(x: i32, precision: f32) -> f32 { function main (line 26) | fn main() { FILE: rust/16_binary_search/binary_search.rs function find_first_eq (line 2) | fn find_first_eq(nums: Vec, value: i32) -> i32 { function find_last_eq (line 21) | fn find_last_eq(nums: Vec, value: i32) -> i32 { function find_first_ge (line 40) | fn find_first_ge(nums: Vec, value: i32) -> i32 { function find_last_le (line 59) | fn find_last_le(nums: Vec, value: i32) -> i32 { function main (line 77) | fn main() { FILE: rust/16_binary_search/search_in_rotated_sorted_array.rs function search (line 2) | pub fn search(nums: Vec, target: i32) -> i32 { function main (line 31) | fn main() { FILE: rust/19_hash_table/hash_table.rs type MyHashTable (line 2) | pub struct MyHashTable<'a> { function new (line 8) | fn new() -> MyHashTable<'a> { function insert (line 15) | pub fn insert(&mut self, key: &'a str, value: &'a str) { function get (line 20) | pub fn get(&self, key: &'a str) -> Option<&'a str> { function remove (line 25) | pub fn remove(&mut self, key: &'a str) -> Option<&'a str> { function hash (line 32) | fn hash(&self, key: &'a str) -> i32 { function hash_code (line 37) | fn hash_code(&self, key: &'a str) -> i32 { function main (line 45) | fn main() { FILE: rust/23_binary_tree/inorder_traversal.rs function inorder_traversal (line 5) | pub fn inorder_traversal(root: Option>>) -> Vec { function _inorder (line 13) | fn _inorder(root: Option>>, result: &mut Vec) { function inorder_traversal (line 25) | pub fn inorder_traversal(root: Option>>) -> Vec { FILE: rust/23_binary_tree/level_order_traversal.rs function level_order (line 6) | pub fn level_order(root: Option>>) -> Vec> { FILE: rust/23_binary_tree/postorder_traversal.rs function postorder_traversal (line 5) | pub fn postorder_traversal(root: Option>>) -> Vec>>, result: &mut Vec) { function postorder_traversal (line 25) | pub fn postorder_traversal(root: Option>>) -> Vec>>) -> Vec>>, result: &mut Vec) { function inorder_traversal (line 25) | pub fn inorder_traversal(root: Option>>) -> Vec { FILE: rust/23_binary_tree/util/tree.rs type TreeNode (line 5) | pub struct TreeNode { method new (line 13) | pub fn new(val: i32) -> Self { function to_tree (line 22) | pub fn to_tree(vec: Vec>) -> Option>> { FILE: rust/24_binary_tree/insert_in_binary_tree.rs function insert_into_bst (line 4) | pub fn insert_into_bst(root: Option>>, val: i32) ->... function insert (line 8) | fn insert(node: &Option>>, val: i32) { FILE: rust/24_binary_tree/max_depth_in_binary_tree.rs function max_depth (line 5) | pub fn max_depth(root: Option>>) -> i32 { function max_depth (line 29) | pub fn max_depth(root: Option>>) -> i32 { FILE: rust/24_binary_tree/search_in_binary_tree.rs function search_bst (line 5) | pub fn search_bst(root: Option>>, val: i32) -> Opti... function search_bst (line 19) | pub fn search_bst(root: Option>>, val: i32) -> Opti... FILE: rust/24_binary_tree/util/tree.rs type TreeNode (line 5) | pub struct TreeNode { method new (line 13) | pub fn new(val: i32) -> Self { function to_tree (line 22) | pub fn to_tree(vec: Vec>) -> Option>> { FILE: rust/28_heap/build_heap.rs function build_heap_down_up (line 2) | pub fn build_heap_down_up(nums: &mut Vec) { function heapify_down_up (line 8) | fn heapify_down_up(nums: &mut Vec, idx: usize) { function build_heap_up_down (line 20) | pub fn build_heap_up_down(nums: &mut Vec) { function heapify_up_down (line 27) | fn heapify_up_down(nums: &mut Vec, idx: usize, nums_len: usize) { function swap (line 40) | fn swap(nums: &mut Vec, idx: usize, parent_idx: usize) { function main (line 46) | fn main() { FILE: rust/28_heap/heap.rs type Heap (line 2) | struct Heap { method new (line 9) | pub fn new(capacity: usize) -> Self { method insert (line 17) | pub fn insert(&mut self, x: i32) -> bool { method remove_max (line 40) | pub fn remove_max(&mut self) -> Option { method heapify (line 55) | fn heapify(&mut self) { method swap (line 68) | fn swap(&mut self, idx: usize, parent_idx: usize) { function main (line 75) | fn main() { FILE: rust/28_heap/sort_heap.rs function sort (line 1) | pub fn sort(nums: &mut Vec) { function build_heap (line 9) | fn build_heap(nums: &mut Vec) { function heapify (line 16) | fn heapify(nums: &mut Vec, idx: usize, nums_len: usize) { function swap (line 29) | fn swap(nums: &mut Vec, idx: usize, parent_idx: usize) { function main (line 35) | fn main() { FILE: rust/29_heap/get_median.rs function get_median (line 5) | fn get_median(nums: &mut Vec, x: i32) -> i32 { function main (line 46) | fn main() { FILE: rust/29_heap/get_top_k.rs function get_top_k (line 4) | fn get_top_k(nums: &mut Vec, k: i32, x: i32) -> Vec { function main (line 38) | fn main() { FILE: rust/29_heap/merge_sorted_array.rs function merge_sorted_array (line 3) | fn merge_sorted_array(nums1: &mut Vec, nums2: &mut Vec, nums3:... function main (line 31) | fn main() { FILE: rust/31_graph/graph_search.rs type Graph (line 6) | struct Graph { method new (line 12) | fn new(v: i32) -> Self { method add_edge (line 20) | fn add_edge(&mut self, s: i32, t: i32) { method bfs (line 25) | fn bfs(&self, s: i32, t: i32) { method dfs (line 50) | fn dfs(&self, s: i32, t: i32) { method recur_dfs (line 59) | fn recur_dfs(&self, method draw (line 79) | fn draw(&self, prev: &Vec, s: i32, t: i32) { function main (line 88) | fn main() { FILE: rust/32_string/bf_rk.rs function bf (line 3) | fn bf(primary: &str, pattern: &str) -> i32 { function rk (line 18) | fn rk(primary: &str, pattern: &str) -> i32 { function main (line 65) | fn main() { FILE: rust/33_string/bm.rs function generate_bc (line 2) | fn generate_bc(pattern: &str) -> Vec { function generate_gs (line 12) | fn generate_gs(pattern: &str) -> (Vec, Vec) { function move_by_gs (line 34) | fn move_by_gs(bad_char_start_index: usize, pattern_len: usize, suffix: &... function bm_search (line 47) | fn bm_search(primary: &str, pattern: &str) -> i32 { function main (line 75) | fn main() { FILE: rust/34_string/kmp.rs function kmp_search (line 1) | fn kmp_search(primary: &str, pattern: &str) -> Vec { function get_failure_function (line 29) | fn get_failure_function(pattern: &str) -> Vec { function main (line 50) | fn main() { FILE: rust/35_trie/trie.rs type Trie (line 4) | struct Trie { method new (line 10) | fn new() -> Self { method insert (line 14) | fn insert(&mut self, word: &str) { method find (line 22) | fn find(&self, word: &str) -> bool { function main (line 34) | fn main() { FILE: rust/38_divide_and_conquer/merge_sort_count.rs function merge_sort_count (line 1) | fn merge_sort_count(mut nums: Vec) -> i32 { function merge_sort (line 8) | fn merge_sort(nums: &mut Vec, low: usize, high: usize, count: &mut ... function merge (line 18) | fn merge(nums: &mut Vec, function main (line 53) | fn main() { FILE: rust/39_back_tracking/bag.rs function solve_bag (line 3) | fn solve_bag(items: Vec, capacity: i32) -> HashMap> { function bag (line 21) | fn bag(pick_idx: i32, function get_value (line 62) | fn get_value(items: &Vec, picks: &Vec) -> i32 { function main (line 70) | fn main() { FILE: rust/39_back_tracking/bag_exec.rs function solve_bag (line 3) | fn solve_bag(items: Vec<(i32, i32)>, capacity: i32) -> HashMap, picks: &Vec) -> i32 { function main (line 71) | fn main() { FILE: rust/39_back_tracking/n_queens.rs function solve_n_queens (line 3) | pub fn solve_n_queens(n: i32) -> Vec> { function schedule_queens (line 10) | fn schedule_queens(board: &mut Vec>, solution: &mut Vec>, len: usize, row: usize, col: usize)... function main (line 42) | fn main() { FILE: rust/39_back_tracking/regex.rs function regex_match (line 1) | fn regex_match(text: &str, regex: &str) -> bool { function rematch (line 9) | fn rematch(text_chars: &Vec, function main (line 44) | fn main() { FILE: rust/40_dynamic_programming/bag.rs function knapsack (line 1) | fn knapsack(items: Vec, capacity: i32) -> i32 { function main (line 37) | fn main() { FILE: rust/40_dynamic_programming/knapsack.rs function knapsack (line 1) | fn knapsack(items: Vec<(i32, i32)>, capacity: i32) -> i32 { function main (line 27) | fn main() { FILE: rust/40_dynamic_programming/triangle.rs function minimum_total (line 3) | pub fn minimum_total(mut triangle: Vec>) -> i32 { function main (line 14) | fn main() { FILE: rust/41_dynamic_programming/coin_change.rs function coin_change (line 1) | fn coin_change(coins: Vec, amount: i32) -> i32 { function main (line 15) | fn main() { FILE: rust/41_dynamic_programming/min_dis_path.rs function min_dis_path (line 1) | fn min_dis_path(matrix: Vec>) -> i32 { function main (line 28) | fn main() { FILE: rust/42_dynamic_programming/edit_distance.rs function edit_distance (line 2) | fn edit_distance(word1: &str, word2: &str) -> i32 { function main (line 24) | fn main() { FILE: rust/42_dynamic_programming/longest_increasing_subsequence.rs function longest_increasing_subsequence (line 2) | fn longest_increasing_subsequence(nums: Vec) -> i32 { function main (line 18) | fn main() { FILE: typescript/06_linkedlist/LRUCache.ts class LRUCache (line 5) | class LRUCache { method constructor (line 11) | constructor(limit: number) { method get (line 17) | public get(key: K): V | null { method put (line 24) | public put(key: K, value: V) { method refreshNode (line 43) | private refreshNode(node: LinkedListNode) { method removeNode (line 49) | private removeNode(node: LinkedListNode): K { method addNode (line 66) | private addNode(node: LinkedListNode) { class LinkedListNode (line 80) | class LinkedListNode { method constructor (line 86) | constructor( FILE: typescript/06_linkedlist/LinkedList.ts class LinkedList (line 7) | class LinkedList implements List { method findByIndex (line 12) | findByIndex(index: number): LinkedListNode | null { method findByValue (line 22) | findByValue(value: T): LinkedListNode | null { method insertToHead (line 30) | insertToHead(value: T): void { method insertToIndex (line 49) | insertToIndex(value: T, index: number): void { method insertToTail (line 64) | insertToTail(value: T): void { method remove (line 78) | remove(value: T): boolean { method toString (line 98) | toString(): string { class LinkedListNode (line 109) | class LinkedListNode { method constructor (line 114) | constructor( FILE: typescript/06_linkedlist/List.ts type List (line 1) | interface List { FILE: typescript/06_linkedlist/SingleLinkedList.ts class SingleLinkedList (line 7) | class SingleLinkedList implements List { method constructor (line 11) | constructor() { method findByValue (line 15) | public findByValue(value: T): SingleNode | null { method findByIndex (line 24) | public findByIndex(index: number): SingleNode | null { method insertToIndex (line 39) | public insertToIndex(value: T, index: number): void { method remove (line 56) | public remove(value: T): boolean { method insertToHead (line 67) | public insertToHead(value: T): void { method insertToTail (line 72) | public insertToTail(value: T): void { method insertNodeToHead (line 77) | private insertNodeToHead(node: SingleNode): void { method toString (line 82) | public toString(): string { method insertNodeToTail (line 96) | private insertNodeToTail(newNode: SingleNode): void { class SingleNode (line 105) | class SingleNode { method constructor (line 109) | constructor(value: T, next: SingleNode | null = null) { FILE: typescript/07_linkedlist/LinkedListAlog.ts class LinkedListAlog (line 9) | class LinkedListAlog { method reverse (line 14) | public static reverse(list: SingleNode): SingleNode | null { method checkCircle (line 30) | public static checkCircle(list: SingleNode): boolean { method removeFromEnd (line 47) | public static removeFromEnd(list: SingleNode, index: number): Si... method findMidNode (line 65) | public static findMidNode(list: SingleNode): SingleNode | null { method mergeSortedLists (line 81) | public static mergeSortedLists(a: SingleNode, b: SingleNode):... class SingleNode (line 114) | class SingleNode { method constructor (line 118) | constructor(value: T, next: SingleNode | null = null) { FILE: typescript/08_stack/StackAndBrowser.ts class Stack (line 4) | class Stack { method push (line 8) | public push(value: T) { method pop (line 20) | public pop(): T | null { class LinkedNode (line 34) | class LinkedNode { method constructor (line 38) | constructor(value: T, next: LinkedNode | null = null) { class Browser (line 47) | class Browser { method constructor (line 54) | constructor(current: T) { method back (line 60) | public back(): T | null { method forward (line 69) | public forward(): T | null { method linkUrl (line 82) | public linkUrl(value: T) { method getCurrentPage (line 87) | public getCurrentPage(): T { FILE: typescript/09_queue/CircularQueue.ts class CircularQueue (line 5) | class CircularQueue { method constructor (line 14) | constructor(capacity: number) { method enqueue (line 18) | public enqueue(item: T): boolean { method dequeue (line 27) | public dequeue(): T | null { FILE: typescript/09_queue/SimpleQueue.ts class SimpleQueue (line 4) | class SimpleQueue { method enqueue (line 12) | public enqueue(value: T) { method dequeue (line 25) | public dequeue(): T | null { method printAll (line 32) | public printAll(): string { class LinkedNode (line 46) | class LinkedNode { method constructor (line 50) | constructor(value: T, next: LinkedNode | null = null) { FILE: typescript/10_recursive/climbStairs.ts function fn (line 9) | function fn(n: number): any { function fnWithDepth (line 23) | function fnWithDepth(depth: number) { function fnWithMap (line 40) | function fnWithMap() { FILE: typescript/11_sorts/simpleSort.ts type SortType (line 11) | enum SortType { type SortAlgo (line 16) | interface SortAlgo { class BubbleSort (line 20) | class BubbleSort implements SortAlgo { method sort (line 21) | sort(array: number[]) { class InsertSort (line 39) | class InsertSort implements SortAlgo { method sort (line 40) | sort(array: number[]) { class SortFactory (line 57) | class SortFactory { method getSortAlgo (line 58) | static getSortAlgo(type: SortType): SortAlgo { FILE: typescript/12_sorts/KthNum.ts class KthNum (line 6) | class KthNum { method getKthNum (line 7) | getKthNum(array: number[], k: number): number { method partition (line 29) | private partition(array: number[], p: number, r: number) { method swap (line 42) | private swap(array: number[], p: number, q: number) { FILE: typescript/12_sorts/MergeSort.ts class MergeSort (line 7) | class MergeSort { method mergeSort (line 8) | public static mergeSort(array: number[]) { method mergeSortInternally (line 14) | static mergeSortInternally(array: number[], p: number, r: number) { method mergeArray (line 24) | private static mergeArray(a: number[], p: number, q: number, r: number) { FILE: typescript/12_sorts/quickSort.ts class QuickSort (line 7) | class QuickSort { method sort (line 8) | static sort(array: number[]): void { method sortInternally (line 11) | private static sortInternally(array: number[], p: number, r: number) { method partition (line 18) | private static partition(array: number[], p: number, r: number): number { method swap (line 37) | private static swap(array: number[], p: number, q: number) { FILE: typescript/13_sorts/BucketSort.ts class BucketSort (line 10) | class BucketSort { method sort (line 11) | static sort(array: number[], bucketSize: number = 5) { FILE: typescript/13_sorts/CountingSort.ts class CountingSort (line 8) | class CountingSort { method sort (line 9) | static sort(array: number[]) { FILE: typescript/14_binarysearch/BinarySearch.ts class BinarySearch (line 6) | class BinarySearch { method bSearch (line 7) | static bSearch(array: number[], target: number) { FILE: typescript/15_binarysearch/BinaryFind.ts class BinaryFind (line 5) | class BinaryFind { method findFirstElement (line 12) | static findFirstElement(array: number[], target: number): number { method findLastElement (line 39) | static findLastElement(array: number[], target: number): number { method findFirstElementGreaterThanTarget (line 67) | static findFirstElementGreaterThanTarget(array: number[], target: numb... method findLastElementLessThanTarget (line 92) | static findLastElementLessThanTarget(array: number[], target: number):... FILE: typescript/17_skiplist/SkipList.ts class SkipList (line 18) | class SkipList { method constructor (line 32) | constructor() { method insert (line 37) | public insert(key: number, value: T): void { method get (line 93) | public get(key: number): T | null { method remove (line 98) | public remove(key: number) { method addEmptyLevel (line 109) | private addEmptyLevel() { method findNode (line 129) | private findNode(key: number): SkipListNode { class SkipListNode (line 149) | class SkipListNode { method constructor (line 157) | constructor(key: number, value: T | null) { FILE: typescript/24_treesearch/TreeSearch.ts class TreeSearch (line 4) | class TreeSearch { method find (line 7) | public find(data: number) { method insert (line 21) | public insert(data: number) { method delete (line 52) | public delete(data: number) { method printAllData (line 97) | public printAllData(): void { method printAll (line 101) | private printAll(node?: Node): void { class Node (line 109) | class Node { method constructor (line 114) | constructor(data: number) {