![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
1. 常见的算法题
2. LeetCode上刷过的算法题
Github地址:https://github.com/809877665/zw-data-structure-algorithm/tree/master/leetCode
wen_文文
每天进步一点点
展开
-
1. 九大排序算法之冒泡排序
/* 冒泡排序: 将当前项和后一项做对比,如果当前项大于后一项,则交换两项的位置; 第一轮排序后:数组元素中的最后一项存放的是最大值 */ function sort1(array) { let len = array.length; for (let i = 0; i < len - 1; i++) { // i控制比较轮数 for (let j = 0; j < len - 1 -..原创 2020-08-10 17:57:18 · 124 阅读 · 0 评论 -
2. 九大排序算法之选择排序
/* 选择排序: 每次找到数组中的最小值,然后用最小值和当前循环的数组项交换 每轮循环时找到数组中最小项的下标 */ function sort2(array) { let len = array.length; for (let i = 0; i < len - 1; i++) { let indexMin = i; //存放每轮中最小值的下标 for (let j = i + 1; j ..原创 2020-08-10 17:58:09 · 176 阅读 · 0 评论 -
3. 九大排序算法之快速排序
快速排序的JavaScript实现法: /* 思路:1.先取一个基准值,然后用数组中的元素和基准值比较,比基准值大的放右边,比基准值小的放左边;基准值一般是取数组中的第一个值; 2.第一轮完成后,以基准值为中心,左侧是比基准值小的数,右侧是比基准值大的数,但是左右两侧的数是无序的;然后分别对两侧的数据继续进行1操作 类似生活中的例子:上体育课站队时,老师让小明出列,然后比他矮的同学站左边,比他高的同学站右边;...原创 2020-08-09 23:20:42 · 144 阅读 · 0 评论 -
剑指 Offer 48. 最长不含重复字符的子字符串
请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。// 求一个字符串中的最长连续不包含重复字符的字串 var lengthOfLongestSubstring = function (s) { let len = s.length; let str = ''; //存放子串 let max = 0; //最长连续不重复字串的长度 for (let i = 0; i < len; i++) { l.原创 2020-09-24 09:52:43 · 78 阅读 · 0 评论 -
给定参数n,从1到n会有n个整数1,2,3,...,n,这n个数组共有n!种排列,按照大小顺序升序排列出所有列的情况,并一一标记,给定n和k,返回第k个值
给定参数n,从1到n会有n个整数1,2,3,...,n这n个数组共有n!种排列,按照大小顺序升序排列出所有列的情况,并一一标记,给定n和k,返回第k个值参考:LeetCode 46题 // 回溯法:列出所有可能的序列 var permute = function (nums) { var res = [] diff([]) function diff(path) { if (path.length === nums.length) {原创 2020-08-24 17:20:24 · 2901 阅读 · 0 评论 -
写一个函数,来获取字符串数组中的通用结尾。 如果不存在通用的结尾,返回空字符串 ““。
/*思路: 将字符串数组中第一个元素作为基本字符串,用基本字符串中的字符,从最后一个开始向前拼接判断是否为通用结束的后缀*/function getEndStr(arr) {let s = '';let str = arr[0].charAt(arr[0].length-1); //默认为第一个元素的最后一个字符for(let i=1;i<arr[0].lengt...原创 2020-04-20 23:19:41 · 855 阅读 · 0 评论 -
9. 回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。进阶:你能不将整数转为字符串来解决这个问题吗?来源:力扣(LeetCode)解法一:字符串法:字符双指..原创 2020-08-07 00:56:19 · 149 阅读 · 0 评论