算法
小Charles不想菜
心有所属,有容乃大
展开
-
关于deque的offerLast和polllast方法和stack的区别
一个小细节:在Java 代码中,stack 并未用 push() 和 pop() ,而用的是 offerLast() 和 pollLast() 。这是因为 Deque 提供的 push() 和 pop() 是 “头插头取”,这与 ans.add(new ArrayList(stack)); 所需的顺序刚好相反,所以才改用了 “尾插尾取”。(其实我认为既然要 “尾插尾取”,还不如直接使用 List 呢)...原创 2021-08-27 21:55:02 · 1832 阅读 · 0 评论 -
leetcode丑数(堆加hashset去重)
给你一个整数 n ,请你找出并返回第 n 个 丑数 。1.什么是丑数:只包含质因子2,3和5的数解法:想要找出第n个丑数,用堆heap可以取出初始时堆为空。首先将最小的丑数 11 加入堆。每次取出堆顶元素 xx,则 xx 是堆中最小的丑数,由于 2x, 3x, 5x2x,3x,5x 也是丑数,因此将 2x, 3x, 5x2x,3x,5x 加入堆。想要不重复,用hashset判断后再存 public int nthUglyNumber2(int n) { int[] yinzi原创 2021-08-10 14:58:33 · 121 阅读 · 0 评论 -
KMP算法
https://www.cnblogs.com/dusf/p/kmp.html给自己留个眼原创 2021-07-20 22:23:30 · 54 阅读 · 0 评论 -
字符串转换整数 (atoi)
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步骤读入的这些数字转换为整数(即,“123” -原创 2021-06-03 13:50:41 · 113 阅读 · 0 评论 -
python 实现爬梯子的斐波那契数列算法
经典的爬梯子算法直接附上代码a=d(n-2),b=d(n-1)def climb(n): if n==1: return 1 if n==2: return 2 else: a,b,i=1,2,3 while i<=n: a,b=b,a+b i+=1 return b##采用巧妙的递归的算法print(climb(10))运行图如下原创 2020-05-10 00:01:48 · 275 阅读 · 0 评论