
算法
文章平均质量分 59
南北tp
这个作者很懒,什么都没留下…
展开
-
极客时间算法课笔记整理15——理论讲解+面试题实战:动态规划
动态规划(Dynamic Programming)代码简化:复杂度是2n加入记忆反过来:一个例子时间复杂度O(m*n)面试题70. Climbing Stairs我的:class Solution { public int climbStairs(int n) { int[] memory= new int[n+1]; memory[0]=1; memory[1]=1; for(int i=2原创 2021-01-14 16:59:16 · 1091 阅读 · 1 评论 -
极客时间算法课笔记整理13——理论讲解+面试题实战:字典树
这里写目录标题字典树面试题[208. Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/)字典树存储结构:java示例:256个ASCII码python代码面试题208. Implement Trie (Prefix Tree)原创 2021-01-12 10:21:57 · 190 阅读 · 0 评论 -
极客时间算法课笔记整理14——理论讲解+面试题实战:位运算
位运算面试题191. Number of 1 Bitspublic class Solution { // you need to treat n as an unsigned value public int hammingWeight(int n) { int res=0; while(n!=0){ n=n&(n-1); res++; } retur原创 2021-01-12 10:21:35 · 315 阅读 · 0 评论 -
极客时间算法课笔记整理12——理论讲解+面试题实战:二分查找
这里写目录标题二分查找面试题[69. Sqrt(x)](https://leetcode.com/problems/sqrtx/)二分查找适合的规则:sorted(单调递增或者递减)bounded(存在上下界)Accessible by index(能够通过索引访问):链表不适合,数组适合、二分查找的代码:面试题69. Sqrt(x)我的代码:错误:测试案例中的2147395599无法通过,因为是int类型的最大整数值,tmp计算会超过int的取值范围class Solutio原创 2020-12-22 17:32:55 · 477 阅读 · 0 评论 -
极客时间算法课笔记整理11——理论讲解+面试题实战:剪枝(N皇后问题、数独问题)
剪枝(26.30 跳过)两种情况:完全肯定某一分支不是最优解,剪枝只是局部最优解,优先遍历局部最优解作业:可以搜一下阿法狗论文的剪枝方法面试题51. N-Queens皇后可以攻击横竖撇捺四个方向Set用法python代码:java代码:...原创 2020-12-22 10:35:03 · 535 阅读 · 0 评论 -
极客时间算法课笔记整理10——理论讲解+面试题实战:广度、深度优先搜索
广度优先搜索(Breadth-First-Search)符合人类思维深度优先搜索(Depth-First-Search)计算机递归会采取栈的数据结构推荐递归写法:面试题102. Binary Tree Level Order Traversal?List是队列结构吗BFS:?补充Queue、Set的知识。我的方法:注意返回值,[] 的返回值与null不同;/** * Definition for a binary tree node. * public cla原创 2020-12-03 12:04:58 · 309 阅读 · 0 评论 -
极客时间算法课笔记整理9——理论讲解+面试题实战:贪心算法
贪心算法面试题122. Best Time to Buy and Sell Stock II我的方法:flag记录该买还是该卖,判断不同拐点的状态。模拟了真实的操作,但不是本题条件下的最简单的想法class Solution { public int maxProfit(int[] prices) { int day = prices.length; boolean flag=true; if(day==1 || day==0){retu原创 2020-11-30 21:45:04 · 225 阅读 · 0 评论 -
极客时间算法课笔记整理8——理论讲解+面试题实战:二叉树的遍历
二叉树的遍历二叉搜索树 中序遍历 是一个有序的数组pre-orderin-orderpost-orderRecursion注意:对于fib函数这种,有大量重复子问题的过程,递归的效率不高,可以通过记录结果,动态规划 解决递归的写法:终止条件数据处理下一层递归状态处理(可选,递归结果已经返回之后进行的)Divide & Conquer可以在多个电脑上面并行运算;注意,适用于重复计算不多的问题。代码模板(如fib):终止条件处理数据;拆分问题子问题处理原创 2020-11-30 15:04:57 · 332 阅读 · 0 评论 -
极客时间算法课笔记整理7——理论讲解+面试题实战:树和图
Tree & Binary Tree & Binary Search Tree & GraphTreeBinary Tree都有左右孩子——完全二叉树Binary Search TreeGraph面试题98. Validate Binary Search Tree/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeN原创 2020-11-24 17:09:14 · 853 阅读 · 0 评论 -
极客时间算法课笔记整理4——理论讲解+面试题实战:优先队列
目录优先队列(Priority Queue)小顶堆(Mini Heap)大顶堆面试题优先队列(Priority Queue)小顶堆(Mini Heap)大顶堆面试题原创 2020-11-12 17:59:04 · 185 阅读 · 0 评论 -
极客时间算法课笔记整理5——理论讲解+面试题实战:哈希表
Map &SetHashHashTable & Hash Function & CollisionHashTableMap &SetHashMap ,HashSet, TreeMap, TreeSet面试题[242. Valid Anagram](https://leetcode.com/problems/valid-anagram/)HashHashTable & Hash Function & CollisionHashTableMap &原创 2020-11-12 17:56:02 · 463 阅读 · 0 评论 -
极客时间算法课笔记整理3——理论讲解+面试题实战:栈、队列
目录栈、队列(Stack、Queue)栈结构队列结构面试题栈、队列(Stack、Queue)栈结构队列结构面试题原创 2020-10-07 13:24:37 · 312 阅读 · 0 评论 -
极客时间算法课笔记整理2——理论讲解+面试题实战:数组、链表
目录数组、链表(Array、Linked List)数组三级目录数组、链表(Array、Linked List)数组内存里一段连续的存储区域三级目录原创 2020-09-27 22:03:22 · 496 阅读 · 0 评论