Skip to content

xiangflight/Data-Structure-and-Algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSA(Data Structures and Algorithm) + Practice

DSA

Data Structures

# 名称 结构 额外
1 数组 Array GenericArray
2 链表 ListNode SinglyLinkedList LRUBaseLinkedList LRUBasedArray LinkedListAlgo
3 SampleBrowser StackBasedOnLinkedList
4 队列 ArrayQueue CircularQueue DynamicArrayQueue QueueBasedLinkedList
5 跳表 SkipList
6 哈希表 Hashtable
7 二叉树 TreeNode
8 Graph

Algorithms

# 名称 示例 测试
1 递归 RecursiveExample
2 排序 BubbleSort InsertionSort SelectionSort MergeSort QuickSort
3 二分查找 BinarySearch BinarySearchTest
4 哈希 Hashing

Practice

LeetCode

# Title Category Difficulty Code Test
0001 Two sum Algorithm Easy Java Test
0002 Add Two Numbers Algorithm Medium Java Test
0003 Longest Substring without Repeating Characters Algorithm Medium Java Test
0006 ZigZag Conversion Algorithm Medium Java Test
0007 Reverse Integer Algorithm Easy Java Test
0011 Container With Most Water Algorithm Medium Java Test
0015 3Sum Algorithm Medium Java Test
0016 3Sum Closest Algorithm Medium Java Test
0018 4Sum Algorithm Medium Java Test
0019 Remove Nth Node From End of List Algorithm Medium Java Test
0020 Valid Parentheses Algorithm Easy Java Test
0021 Merge Two Sorted Lists Algorithm Easy Java Test
0024 Swap Nodes in Pairs Algorithm Java Test
0026 Remove Duplicates from Sorted Array Algorithm Easy Java Test
0027 Remove Element Algorithm Easy Java Test
0031 Next Permutation Algorithm Medium Java Test
0046 Permutations Algorithm Medium Java Test
0047 Permutations II Algorithm Medium Java Test
0049 Group Anagrams Algorithm Medium Java Test
0075 Sort Colors Algorithm Medium Java Test
0076 Minimum Window Substring Algorithm Hard Java Test
0080 Remove Duplicates from Sorted Array II Algorithm Medium Java Test
0082 Remove Duplicates from Sorted List II Algorithm Medium Java Test
0083 Remove Duplicates from Sorted List Algorithm Easy Java Test
0086 Partition List Algorithm Medium Java Test
0088 Merge Sorted Array Algorithm Easy Java Test
0092 Reverse Linked List II Algorithm Medium Java Test
0098 Validate Binary Search Tree Algorithm Medium Java Test
0101 Symmetric Tree Algorithm Easy Java Test
0108 Convert Sorted Array to Binary Search Tree Algorithm Easy Java Test
0110 Balanced Binary tree Algorithm Easy Java Test
0112 Path Sum Algorithm Easy Java Test
0113 Path Sum II Algorithm Medium Java Test
0120 Triangle Algorithm Medium Java Test
0125 Valid Palindrome Algorithm Easy Java Test
0129 Sum Root to Leaf Numbers Algorithm Medium Java Test
0149 Max Points on a Line Algorithm Difficult Java Test
0153 Find Minimum in Rotated Sorted Array Algorithm Medium Java Test
0154 Find Minimum in Rotated Sorted Array Algorithm Difficult Java Test
0167 Two sum II - Input array is sorted Algorithm Easy Java Test
0202 Happy Number Algorithm Easy Java Test
0203 Remove Linked List Elements Algorithm Easy Java Test
0205 Isomorphic Strings Algorithm Easy Java Test
0206 Reverse Linked List Algorithm Easy Java Test
0209 Minimum Size Subarray Sum Algorithm Medium Java Test
0215 Kth Largest Element in an Array Algorithm Medium Java Test
0217 Contains Duplicate Algorithm Easy Java Test
0219 Contains Duplicate II Algorithm Easy Java Test
0220 Contains Duplicate III Algorithm Medium Java Test
0222 Count Complete Tree Nodes Algorithm Medium Java Test
0225 Implement Stack Using Queues Algorithm Easy Java Test
0226 Invert Binary Tree Algorithm Easy Java Test
0235 Lowest Common Ancestor of a Binary Search Tree Java Test
0236 Lowest Common Ancestor of a Binary Tree Algorithm Medium java Test
0242 Valid Anagram Algorithm Easy Java Test
0257 Binary Tree Paths Algorithm Easy Java Test
0283 Move Zeroes Algorithm Easy java Test
0290 Word Pattern Algorithm Easy Java Test
0328 Odd Even Linked List Algorithm Medium Java Test
0344 Reverse String Algorithm Easy Java Test
0345 Reverse Vowels of a String Algorithm Easy Java Test
0349 Intersection of Two Arrays Algorithm Easy Java Test
0350 Intersection of Two Arrays II Algorithm Easy Java Test
0404 Sum of Left Leaves Algorithm Easy Java Test
0437 Path sum III Algorithm Easy Java Test
0438 Find All Anagrams in a String Algorithm Medium Java Test
0442 Find All Duplicates in an Array Algorithm Medium Java Test
0445 Add Two Numbers II Algorithm Medium Java Test
0447 Number of Boomerangs Algorithm Easy Java Test
0451 Sort Characters By Frequency Algorithm Medium Java Test
0454 4Sum II Algorithm Medium Java Test
0566 Reshape the Matrix Algorithm Easy Java Test
0717 1-bit and 2-bit Characters Algorithm Easy Java Test
0962 Maximum Width Ramp Algorithm Medium Java Test
0978 Longest Turbulent Subarray Algorithm Medium Java Test
1053 Previous permutation With One Swap Algorithm Medium java Test

剑指offer

# Title Category Code Test
4 二维数组中的查找 数组 Java Test
5 替换空格 字符串 Java Test
6 从尾到头打印链表 链表 Java Test

CC 189

# Title Category Code
8.1 Triple Step Recursion and Dynamic Programming Java
8.2 Robot in a Grid Recursion and Dynamic Programming Java
8.3 Magic Index Recursion and Dynamic Programming Java
8.4 Power Set Recursion and Dynamic Programming Java
8.5 Recursive Multiply Recursion and Dynamic Programming Java
8.6 Towers of Hanoi Recursion and Dynamic Programming Java
8.7 Permutations without Dups Recursion and Dynamic Programming Java
8.8 Permutations with Dups Recursion and Dynamic Programming Java
8.9 Parens Recursion and Dynamic Programming Java
8.11 Coins Recursion and Dynamic Programming Java
8.12 Eight Queens Recursion and Dynamic Programming Java

//todo

About

Data Structure and Algorithm + Practice

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages