Shallow Dreamer Blog

轮转数组

使用js、python

给你一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/rotate-array 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 示例: 输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4] 解释: ...

数组中两个单词的距离

使用js

有个内含单词的超大文本文件,给定任意两个不同的单词,找出在这个文件中这两个单词的最短距离(相隔单词数)。如果寻找过程在这个文件中会重复多次,而每次寻找的单词不同,你能对此优化吗? 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/find-closest-lcci 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 示例: ...

删除原语分解后的外层括号

使用js

有效括号字符串为空 ““、”(“ + A + “)” 或 A + B ,其中 A 和 B 都是有效的括号字符串,+ 代表字符串的连接。 例如,”“,”()”,”(())()” 和 “(()(()))” 都是有效的括号字符串。 如果有效字符串 s 非空,且不存在将其拆分为 s = A + B 的方法,我们称其为原语(primitive),其中 A 和 B 都是非空有效括号字符串。 给出一个...

找到第一个错误的版本

使用二分算法

你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。 假设你有 n 个版本 [1, 2, …, n],你想找出导致之后所有版本出错的第一个错误的版本。 你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中...

判断值是否在数组内

使用js的API方法

法一:利用indexOf 不存在返回-1,存在返回第一次出现的索引 // js检查数组中是否包含某个元素 // 法一 indexOf var arr = [100,20,50,58,6,69,36,45,78,66,45] if(arr.indexOf(66)==-1){ console.log("不存在") }else{ consol...

汉诺塔问题

编写算法输出解决汉诺塔问题的最简步骤

移动步骤 三根柱子A,B,C。A杆上有N个N>1N>1穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆:* 每次只能移动一个圆盘; 大盘不能叠在小盘上面。 解法一: 使用递归 分析: 当只有一个时,只需把第一个盘从a移到c 两个时,先把第一个盘从a移到b,再把第二个盘从a移到c,最后把第一个盘从b移到c 三个时,将...

排序算法

部分排序算法总结

1.冒泡排序 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端 思路: 将相邻的元素进行比较,如果n - 1 > n 交换位置,对每对元素进行同样的工作,完成时最大的数会在最后,然...

利用python的numpy库清除数组中的0

使用python

代码: import numpy as np a = [0, 1, 2] a = np.array(a) a = a[a != 0].tolist() print(a) //a = [1, 2]

利用button和input实现文件上传

使用js

代码: <template> <button> 导入文件 <input type="file" @change="fileChange" accept=".*" :disable="disable"/> </button> </template> <script> da...

利用js创建a标签下载文件

使用js

代码: let url = window.URL.createObjectURL(new Blob([文件流(一般为res.data)], {type: "Blob类型"}) let link = document.createElement('a') link.style.dispaly = 'none' link.href = url link.setAttribute('downlo...