More than code

More Than Code
The efficiency of your iteration of reading, practicing and thinking decides your understanding of the world.
算法

莫里斯遍历

莫里斯遍历 有关二叉树的遍历算法 非递归,无额外空间,时间复杂度O(n) 空间复杂度O(1) 很巧妙的遍历算法 核心思想就是利用树节点中的空指针 考虑非递归算法,如果我们不用栈的话,最主要的问题就是遍历完一个节点的左子树后怎么回到这个节点并遍历他的右子树 在遍历左子树的时候,最后一个遍历的节点一定是二叉树中序遍历中,当前节点的前一个节点 也就是当前节点左子树的最右边的节点 我们可以把这个前驱节点的右子树设为当前节点,这样遍历完左子树的时候,也就是遍历完这个前驱节点的时候,我们可以通过先前设置的那个指针回到当前节点,…

2021年1月10日 0条评论 531点热度 0人点赞 sheep 阅读全文
C++

排序

排序 区分的主要依据就是算法是否是基于比较的 leetcode排序 算法可视化 图是leetcode题解上的 这里不打算具体的说计数排序和桶排序,因为思路较为简单 代码均在leetcode上测试过,可以放心的使用 选择排序 class Solution { public: vector<int> sortArray(vector<int>& nums) { int n = nums.size(); for (int i = 0; i < n; i++) { int minn =…

2021年1月9日 0条评论 563点热度 1人点赞 sheep 阅读全文
C++

C++ 11/14/17 新特性

c++新特性 nullptr 空指针 防止隐式的类型转换 NULL 和 0 constexpr 常量表达式 constexpr函数可以使用递归 constexpr int fibonacci(const int n) { return n == 1 || n == 2 ? 1 : fibonacci(n-1)+fibonacci(n-2); } 并且从c++14开始,constexpr函数内可以使用局部变量,循环,分支等简单语句 if/switch 语句初始化 c++17让我们可以在if或switch时对变量进行初…

2020年12月13日 1条评论 617点热度 1人点赞 sheep 阅读全文
1…1617181920
分类
  • ARTS
  • C++
  • CSAPP
  • daily
  • database
  • leetcode
  • linux
  • ml
  • paper
  • rust
  • ScummVM
  • tech
  • 其他
  • 未分类
  • 笔记
  • 算法
  • 计算机图形学
归档
  • 2023年1月
  • 2022年9月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年1月
  • 2020年12月

COPYRIGHT © 2021 heavensheep.xyz. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS