转载自奇舞周刊微信公众号,https://mp.weixin.qq.com/s/SLvmOmy5LpyV4YJ3rXLnEQ
看完觉得还不够,手动敲一敲加深记忆………
位运算相关
计算汉明重量
汉明重量即整数中比特1的个数,是LeetCode中的一道题。
汉明重量是一串符号中非零符号的个数。因此它等同于同样长度的全零符号串的汉明距离。在最为常见的数据位符号串中,它是1的个数。
1 | function hammingWeight(n) { |
判断奇偶
1 | function isOdd(n) { |
二分查找
非递归方法
1 | function binarySearch(nums, target) { |
递归方法
1 | function binarySearch(nums, target) { |
常见排序
快速排序
1 | function quickSort(arr) { |
冒泡排序
1 | function bobbleSort(arr) { |
二叉树遍历相关
这块内容似懂非懂,尤其是二叉树遍历非递归实现时的算法,有点懵圈
参考之前写的博客二叉树遍历
也是用的递归实现,不知道非递归的方法重不重要
前序遍历(中→左→右)
- 递归实现
1 | function preOrderTraverse(root) { |
- 非递归实现
1 | function preOrderTraverse(root) { |
中序遍历(左→中→右)
- 递归实现
1 | function midOrderTraverse(root) { |
- 非递归实现
1 | function midOrderTraverse(root) { |
后序遍历(左→右→中)
- 递归实现
1 | function postOrderTraverse(root) { |
- 非递归实现
1 | function postOrderTraverse(root) { |
层次遍历
1 | function levelTraverse(root) { |