
数据结构及算法
数据结构及算法
衣乌安、
愿每天合上笔记本盖子的刹那,都有着剑客收剑入鞘的骄傲。。。\n
阿里巴巴-灵犀互娱内推:https://talent.lingxigames.com/off-campus/position-list?shareCode=tnUSkSaCdjj4vvU3_vDQ0g%3D%3D
展开
-
JS 二叉树的三种遍历(递归)方式
所谓二叉树的遍历,是指按照一定的顺序对二叉树的每一个节点均访问一次,且只访问一次。按照访问根节点的访问位置不同通常把二叉树的遍历分为三种方式:前序遍历、中序遍历、后序遍历手画的图。。有点丑见谅一、前序遍历首先访问根节点,然后访问根节点的左子树,在访问根节点的右子树。遍历结果:abdefgc二、中序遍历首先访问根节点的左子树,然后访问根节点,再访问根节点右子树遍历结果: debgfac三、后序遍历首...原创 2018-05-17 17:28:41 · 10647 阅读 · 6 评论 -
冒泡排序、选择排序、快速排序(js)
//冒泡排序: // (从小到大)相邻两个数比较,若后面数小于前面数两个数互换位置, // 一轮下来最大的排到了最后,length-1轮后数组排序完成 function 冒泡排序(arr){ for(var i=0;i<arr.length-1;i++){ for(var j=0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1])...原创 2018-06-07 21:14:40 · 378 阅读 · 0 评论 -
1000瓶毒药,小白鼠测毒问题
转自:https://blog.youkuaiyun.com/shaolianbo/article/details/8650061 问:1000瓶药有1瓶有毒,如果小白鼠服用有毒的药,则24小时后死亡。现在需设计一种策略,使用尽可能少的小白鼠,在24小时内找出有毒的药。 思路: 可以先考虑简单的情况: 喝了毒药之后马上死亡,要求用最少的喝药次数找到毒药: 第一次: 将1-500瓶兑在一起喝。 ...转载 2018-09-15 21:10:58 · 4118 阅读 · 0 评论 -
字典序算法
转自:http://www.sohu.com/a/228117420_453160 算法题目: 给定一个正整数,实现一个方法来求出离该整数最近的大于自身的“换位数”。 什么是换位数呢?就是把一个整数各个数位的数字进行全排列,从而得到新的整数。例如53241和23541。 小灰也不知道这种经过换位的整数应该如何称呼,所以姑且称其为“换位数”。 题目要求写一个方法来寻找最近的且大...转载 2018-10-10 09:03:29 · 2060 阅读 · 0 评论 -
斐波那契数列
斐波那契数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ... 如果设F(n)为该数列的第n项(n∈N*),那么这句话可以写成如下形式:F(n)=F(n-1)+F(n-2) 即每一项都等于前两项之和 以下介绍了两种方法:递归和循环 /** * 斐波那契数列,求第N个数 */ // 递归 function f2(N){ if(N =...原创 2018-10-28 11:24:58 · 241 阅读 · 0 评论 -
计数排序
// 20个随机整数,取值范围0~10, //实现从小到大排序 /** *设置长度为11(0~10)的数组,数组下标即为(0~10)全部置0, *遍历随机数组,统计0~10出现次数,每出现一次,对应下标位置值加1, * 然后遍历生成的数组,输出对应下标值, * 其位置对应数字为多少就输出多少次 */ function f(arr){ var x = []; var resul...原创 2018-10-26 09:37:56 · 122 阅读 · 0 评论 -
数组平铺到指定深度
var result = []; /** * @param {*} arr 数组 * @param {*} depth 深度 * @returns */ function f(arr,depth){ arr.map(function(item){ if(depth){ if(Array.isArray(item)){ result...原创 2018-11-16 20:16:54 · 395 阅读 · 0 评论