【数据结构和算法】
Lovely Ruby
这个作者很懒,什么都没留下…
展开
-
刷 LeetCode 的笔记
算法笔记原创 2022-11-29 11:55:54 · 154 阅读 · 0 评论 -
2021-05-31
文章目录链表移除链表元素链表移除链表元素var removeElements = function (head, val) { let dummyNode = new ListNode(0); dummyNode.next = head; let prev = dummyNode; // 虚拟头节点 while (prev.next) { if (prev.next.val === val) { prev.next =原创 2021-05-31 14:00:51 · 75 阅读 · 0 评论 -
1636. 按照频率将数组升序排序 [javascript]
1636. 按照频率将数组升序排序这是我的代码,一大大大大坨。var frequencySort = function (nums) { let map = {} for (let i = 0, len = nums.length; i < len; i++) { if (typeof map[nums[i]] === 'undefined') { map[nums[i]] = 1; } else {原创 2020-12-22 09:58:00 · 174 阅读 · 0 评论 -
最小栈(JavaScript)
题目最小栈设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。思路:注意如何获取到最小元素,遍历的话耗时肯定高,所以要避免遍历。根据这个思路,我们可以在push操作的时候记录下当前操作下的最小值。之后的push再去和前一个记录的值做对比。/** * 我之前的代码 * initialize you原创 2020-10-12 10:39:42 · 272 阅读 · 0 评论 -
数组去重复元素
数组去重的方法1. 数据结构 Set2. reduce 和 indexOf 的组合3. reduce 和 includes 的组合4. 双重 for 循环 + splice 修改去重5. sort 方法排序6. filter 和 indexOf 的组合7. map 方法实现1. 数据结构 Set var arr = [1,2,3,1,2,3,1,2,3,1,2,3] console....原创 2019-11-11 20:58:46 · 385 阅读 · 0 评论 -
【数据结构和算法_01】什么是数据结构、逻辑结构、物理结构、算法及效率
文章目录什么是数据结构?逻辑结构集合结构线性结构树形结构图形结构物理结构顺序存储结构链式存储结构感谢小甲鱼的教学视频!!!什么是数据结构?程序设计 = 数据结构 + 算法数据结构就是关系,就是数据元素相互之间存在的一种或多种特定关系的集合数据结构分为 逻辑结构 和 物理结构逻辑结构:是指数据对象中数据元素之间的相互关系物理结构:数据的逻辑结构在计算机中的存储形式逻辑结构...原创 2019-11-12 21:33:22 · 1089 阅读 · 0 评论 -
二分法查找
思路首先要排序设置个 min 和 max ,分别是0 和 arr.length - 1(代表每一次查询的范围)设置个 mid ,这个是查询的中间值,每一次你要查询的值都要和她比较 mid = Math.floor((min + max) / 2);如果你要查询的值 val > mid ,说明在右半区,把 min = mid + 1如果你要查询的值 val < mid ,说明...原创 2019-11-11 21:07:41 · 123 阅读 · 0 评论 -
两个数的置换
两个数的置换第一种:通过第三个参数 var a = 5; var b = 6; var t = a; a = b; b = t;第二种:加减运算 a = a + b; b = a - b; a = a - b;第三种:数组 a = [a,b]; b = a[0]; a = a[1];第四种:异或(效率提高)异或的符号是 ...原创 2019-10-25 17:32:15 · 391 阅读 · 0 评论