数据结构
萤火之森-Thezero
https://blog.xkongkeji.com/
展开
-
LeetCode刷题日记之链表中倒数第k个节点
个人博客网站欢迎交流:萤火之森:https://blog.xkongkeji.com解题思路:遍历出链表长度,设置一个计数点,当找到倒数第K个节点时返回,链表(感觉走了笨办法)var getKthFromEnd = function(head, k) { let conut=1; let index=1; let temp=head; while(temp&&temp.next){ conut++ temp=temp.next原创 2021-01-21 13:52:47 · 79 阅读 · 0 评论 -
LeetCode刷题日记之顺时针打印矩阵
个人博客网站欢迎交流:萤火之森:https://blog.xkongkeji.com解题思路:把矩阵分为一个一个的圆环,顺时针遍历圆环即可(设置边界值,根据边界值,遍历圆环),只剩下一行,从左到右依次添加,只剩下一列时,从上到下依次添加。let matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9],];let spiralOrder = (matrix) => { if (matrix.length == 0) return原创 2021-01-12 13:58:00 · 100 阅读 · 0 评论 -
LeetCode刷题日记之找出数组中重复数字
个人博客网站欢迎交流:萤火之森:https://blog.xkongkeji.com对于一段程序,用不同的方法写消耗时间差距还是很大的,下面是本题的逐渐改进过程。遍历let nums = [0, 1, 2, 3, 4, 11, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];let findRepeatNumber = function (nums) { let startIndex = 0; let result; while (startInde原创 2021-01-11 16:17:38 · 105 阅读 · 1 评论 -
手撕数据结构---栈
个人博客网站欢迎交流:萤火之森:https://blog.xkongkeji.com什么是栈栈是一种后进先出的数据结构,也就是说最新添加的项最早被移出;它是一种运算受限的线性表,只能在表头/栈顶进行插入和删除操作。栈有栈底和栈顶。class Stack { constructor() { this.list = []; } push(val) { return this.list.push(val); } getLength(原创 2020-11-22 20:07:02 · 118 阅读 · 0 评论 -
手撕数据结构----队列与优先队列
个人博客网站欢迎交流:萤火之森:https://blog.xkongkeji.com手撕数据结构----队列与优先队列什么是队列(先进先出)队列,和栈有点类似,但是又不太一样,队列遵循先进先出的原则。列就是排队,在前面的人先享受服务,完后前面的人先走。普通队列/** * 普通队列 */class Queue { constructor() { this.list = []; } push(val) { return this.list原创 2020-11-17 20:04:21 · 210 阅读 · 0 评论