![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
Bee.F
这个作者很懒,什么都没留下…
展开
-
单链表反转
带有头节点的链表思考:头插法,将遍历到的节点往前面添加;public class ReverseList01 { /** * 定义链表节点 */ public class Node { public int val; //指向下一个节点 public Node next; //构造器 public Node(int no){ this.val = no;.原创 2021-09-25 20:38:05 · 102 阅读 · 0 评论 -
查找单链表中的倒数第k个结点
有头结点且头结点不存放数据的链表思路:倒数第k个节点的位置 = 链表总长度size-kpublic static void main(String[] args) { // 初始化链表 Node node1 = new Node(1); Node node2 = new Node(2); Node node3 = new Node(3); Node node4 = new Node(4); SingleLinkedList singleLinked.原创 2021-09-25 19:55:00 · 717 阅读 · 0 评论 -
算法题:1000个苹果和10个箱子
最近去面试笔试遇到一道算法题,题目是放在最后面的加分题,大概内容如下:现在有1000个苹果,和10个箱子,如何把这1000个苹果装在这10个箱子里,才能使不管任何数量(1-1000)的苹果,都能一次给出?当时我基本没思路,也没多少时间,直接跳过了;后来查了一下,用到二进制的思想;1000个苹果,最接近1024,转化为2进制,需要占用10个bit,则从右往左数,第一个bit位表示1个苹果,第二个bit位表示2个苹果,第三个bit位表示4个苹果,,,第10个bit位表示剩下的489个苹果。分别把这原创 2020-12-03 15:30:50 · 9197 阅读 · 2 评论 -
有n步台阶一次只能上1步或2步共有多少种走法?
public class test { //递归算法 public static long f(int n){ if(n==0) return 0; if(n==1 || n==2) return n; return f(n-1) + f(n-2); } //循环遍历 public static int loop(int n){ if(n<1){...原创 2020-01-16 08:13:30 · 532 阅读 · 0 评论