Toggle navigation
我太菜了
Home
About
Tags
我太菜了
喜欢写Hello World的未来程序员.
变态跳台阶
你快乐吗?
变态跳台阶 C++,还是动态规划。 有一种延续上一个题的笨方法,就是f(n) = f(n-1) + f(n-2) + ... f(2) + f(1) + 1,双重循环复杂度O(n)。 其实如果仔细看的话就发现一个规律了,如下规律: f(1) = 1, f(0) = 1 f(2) = 1 = f(1) + 1 = 2 * f(1) f(3) = f(2) + f(1)...
Posted by bbkgl on September 26, 2019
反转链表
你快乐吗?
反转链表 原地反转 Tips:链表题都可以自己先构造一个前置节点指向第一个结点,这样很多题会容易很多。。。 /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ...
Posted by bbkgl on September 26, 2019
包含min函数的栈
你快乐吗?
包含min函数的栈 C++,顺序表实现,4ms。 class Solution { public: void push(int value) { if (stk.empty()) { min_value = value; min_i = 0; } else if (value < min_val...
Posted by bbkgl on September 26, 2019
从尾到头打印链表
你快乐吗?
从尾到头打印链表 倒序打印链表,第一反应就是用栈了。可是想到万一不让用呢?所以递归应该是更好的办法。。。 /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL) { * ...
Posted by bbkgl on September 26, 2019
从上往下打印二叉树
你快乐吗?
从上往下打印二叉树 C++,层序遍历。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ class Solution { public: ve...
Posted by bbkgl on September 26, 2019
二进制中1的个数
你快乐吗?
二进制中1的个数 C++,其实考点中已经说了是位运算了,所以应该首先考虑利用位运算。 按位与(&)运算符 顾名思义,就是对操作数的二进制进行与运算,比如2&1,结果就是0,因为二进制计算10&01就是00嘛。 n&n-1做了什么 我们举个例子,假设n = 10,n的二进制为1010,n - 1即9,二进制为1001,此时我们再用1010&10...
Posted by bbkgl on September 26, 2019
二维数组中的查找
你快乐吗?
二维数组中的查找 思路参考:剑指Offer面试题:2.二维数组中的查找 对于题意提出的有规律的数组,可以有如下思路: 从二维数组的左下角开始查找; 如果当前位置大于target,则说明target不可能在当前位置所在行或所在行的下方,将范围缩小到当前所在行的上方,即将查找范围矩阵的行数缩小一行m--; 如果当前位置小于target,则说明target不可能在当前...
Posted by bbkgl on September 26, 2019
二叉树的镜像
你快乐吗?
二叉树的镜像 C++,前序遍历,dfs。 对于每个结点,交换它的两个儿子结点。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ class Solu...
Posted by bbkgl on September 26, 2019
二叉树的深度
你快乐吗?
二叉树的深度 C++,树深度,递归。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ class Solution { public: int...
Posted by bbkgl on September 26, 2019
二叉树中和为某一值的路径
你快乐吗?
二叉树中和为某一值的路径 C++,简单的dfs,其实想不清楚为什么没有排序也能过。。。 代码: /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ cl...
Posted by bbkgl on September 26, 2019
← Newer Posts
Older Posts →
FEATURED TAGS
Blog
leetcode
C++
剑指offer
http
Raft
Linux
Hadoop
设计模式
CV
链表
动态规划
图
拓扑排序
快排
二叉树
leveldb
数学
数组
二分
dfs
profile
hash表
字符串
贪心
01背包
最小堆
单调栈
luajit
计算机网络
操作系统
共享内存
linux
原地哈希
双指针
滑动窗口
UE4
编译原理
ABOUT ME
写过Hello World, 下过矿。
简
知
✉️ zoujiakun@zju.edu.cn
FRIENDS
飞洋
滔滔
我的知乎
女朋友知乎