GithubHelp home page GithubHelp logo

knightsj / awesome-algorithm-question-solution Goto Github PK

View Code? Open in Web Editor NEW
1.1K 38.0 241.0 891 KB

LeetCode,《剑指offer》中的算法题的题目和解法以及常见算法的实现

License: MIT License

C++ 44.95% Swift 24.57% Java 30.48%
algorithm interview interview-questions leetcode solution

awesome-algorithm-question-solution's Introduction

Introduction

LeetCode &《剑指offer》中的算法题的题目和解法 & 常见算法的实现

Chapters

1. Math Implementation Questions(数学实现题)

1.1 Fibonacci Implementation(斐波那契数列实现)

1.2 Binary Search(二分查找)

1.3 Is Prime(是否是质数)

1.4 Is Ugly Number(是否是丑数)

1.5 Is Power Of Two(是否是2的幂)

1.6 Is Power Of Three(是否是3的幂)

1.7 Count Primes(质数的个数)

2. Algorithm Implementation Questions (算法实现题)

2.0 Sort Test Demo(排序测试用例)

2.1 Bubble Sort Implementation(冒泡排序实现)

2.2 Selection Sort Implementation(选择排序实现)

2.3 Insertion Sort Implementation(插入排序实现)

2.4 Quick Sort Implementation(快速排序实现)

3. Linked List Questions(链表相关问题)

3.0 Linked List Test Demo(链表类,测试用例)

3.1 Linked List Cycle(链表是否有环)

3.2 Intersection Of Two Linked Lists(两个链表的交点)

3.3 Reverse Linked List(反转链表)

3.4 Merge Two Linked Lists(合并两个链表)

3.5 Find the Kth to tail in Linked List(找到链表的倒数第K个节点)

3.6 Recursively Print Linked List(倒序打印链表)

3.7 Remove Nth From End Of Linkded List(删除链表倒数第N个节点)

3.8 Delete Node in a Linked List(删除链表里某个节点)

3.9 Remove Duplicates I(删除链表内重复的节点,保留单个节点)

3.10 Remove Duplicates II(删除链表内所有重复的节点)

3.11 Remove Linked List Elements(删除链表里某个值的所有节点)

3.12 Partition Linked List(左右临界值分离)

3.13 Old Even List(左右奇偶index的值分离)

4. Array Questions(数组相关问题)

4.0 Array Test Demo

4.1 Contains Duplicate I(检测数组中是否包含重复的元素)

4.2 Majority Element(出现次数超过数组长度一半的元素)

4.3 Single Number(数组中只出现过一次的数字)

4.4 Missing Number (寻找数组中缺失的数字)

4.5 Move Zeros (将所有的0移动到数组末尾)

4.6 Remove Element (移除数组中等于某个值的元素)

4.7 Sort Colors(三色旗问题)

4.8 Two Sum II(有序数组内部的两个元素的和为目标值)

4.9 Minimum Sub Array Sum(无序数组和大于或等于某值的最小子数组)

4.10 Intersection of Two Arrays(两个数组的交点元素)

4.11 The Top Kth Frequent Element (出现频率最高的第k个元素)

4.12 The Kth Largest Element(数组中第k大的元素)

4.13 Merge Two Sorted Array (合并两个有序的数组)

4.14 Two Sum I(无序数组内部的两个元素的和为目标值)

5. Binary Tree Questions(二叉树相关问题)

5.1 Maximum Depth of Binary Tree(二叉树的深度)

5.2 Invert Binary Tree(反转二叉树)

5.3 Balanced Binary Tree(是否是平衡二叉树)

5.4 Symmetric Tree(是否是镜像树)

5.5 Is Same Tree(树是否相等)

6. String Questions(字符串相关问题)

6.1 Reverse String(反转字符串)

License

This repositorie is released under the under MIT License

awesome-algorithm-question-solution's People

Contributors

junsw avatar knightsj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-algorithm-question-solution's Issues

冒泡排序可以优化

冒泡排序,每排一次,最外层的循环可以少一次,不用每次都i < n - 1,除非n--

Remove Duplicates II

这个如果链表的第一个节点和第二个节点相同,代码里第一个节点没有移除,比如1->1->2.

斐波那契数列 的问题

斐波那契数列不是从1 开始吗?第一个程序的代码判断是不是有问题呢

int result[2] = {0, 1};

if(n < 2){
    return result[n];
}

传入0 返回 0(手动狗头)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.