自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 微信小程序开发——踩坑笔记

最近从寒假开始,一直断断续续的整着小程序,开发没弄多少,但坑却踩了不少,总有一些看上去很简单的东西但就是弄不出自己想要的样子,这里就把我踩的坑整理一下,其中也借鉴了不少大佬们的博客~ 由于本人小程序开发主要使用的mpvue框架,所以有不少的坑会是mpvue开发过程中的,当然也会有原生小程序的,下面我会标注出来~ 另:此处只列举出了一些细节上的小坑,有关...

2019-04-08 14:27:04 580

原创 JS的lintcode学习笔记(9)—— 二分查找

问题描述:给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。问题说明:要注意数组中会出现重复数字,第一次找到的值未必是最后的答案。问题分析:二分查找是分治算法中十分经典的问题,网上也有很多实现的代码,JS也有很多。但网上给出的代码大部分并没有考虑到重复值的问题,算法只...

2019-02-17 16:47:17 144

原创 JS的lintcode学习笔记(8)—— 二叉查找树中搜索区间

问题描述:给定两个值 k1 和 k2(k1 < k2)和一个二叉查找树的根节点。找到树中所有值在 k1 到 k2 范围内的节点。即打印所有x (k1 <= x <= k2) 其中 x 是二叉查找树的中的节点值。返回所有升序的节点值。问题说明:若有一颗二叉查找树如下: 20 / \ 8 22 / \4 12如果有 k1 = 10 和 k2...

2019-02-17 15:27:05 148

原创 JS的lintcode学习笔记(7)—— Fizz Buzz问题

问题描述:给你一个整数n. 从 1 到 n 按照下面的规则打印每个数:如果这个数被3整除,打印fizz. 如果这个数被5整除,打印buzz. 如果这个数能同时被3和5整除,打印fizz buzz. 如果这个数既不能被 3 整除也不能被 5 整除,打印数字本身。问题说明:只使用一个if语句。问题分析:这道题本身不难,但要只使用一个if语句就有点难度了。参考了一些其他人写的代码,大部分...

2019-02-16 21:14:14 780

原创 JS的lintcode学习笔记(6)—— 合并排序数组||

问题描述:合并两个排序的整数数组A和B变成一个新的数组。问题说明:新数组也要有序。注意一个数组很长一个数组很短的情况。问题分析:这道问题很简单,思路大概是这样:我们首先定义两个指针 p 和 q ,分别指向数组A和数组B的第一个元素。然后while循环,当p小于A.length(注意是length而不是length-1,因为要算上最后一个元素)且q小于B.length时,判断p和q当前指向的...

2019-02-16 16:41:00 115

原创 JS的lintcode学习笔记(5)—— 第k大元素

问题描述:在乱序数组中找到第 k 大的元素。问题说明:可以交换数组中的元素,时间复杂度为O(n),空间复杂度为O(1)。问题分析:首先,我们可以确定,要想找到第k大的数,最简便的方法就是使用冒泡排序,每一轮冒泡得到的就是该轮最大的数,这样循环k轮就可以找到第k大的数。但这种方法时间复杂度过高,数组遍历次数太多,所以不推荐,这里也不用代码实现了。虽然冒泡时间复杂度过高,但排序的思想是对的...

2019-02-16 15:51:08 485

原创 JS的lintcode学习笔记(4)—— 丑数||

问题描述:设计一个算法,找出只含素因子2,3,5 的第 n 小的数。问题说明:只包含因子2,3,5的正整数被称作丑数,比如4,10,12都是丑数,而7,23,111则不是丑数,另外1也是丑数。问题分析:这里提供两种解题思路:方法一:暴力循环。对一个数分别循环除2,3,5,若最后的结果为1即能除尽,计数器加1,最后输出第n个数即可。这种方法虽然可以解决问题,但如果n是一个大整数,算法...

2019-02-15 22:11:15 166

原创 JS的lintcode学习笔记(3)—— 统计数字

问题描述:计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。问题说明:统计k的次数,即若k=1,n=12, 11中k的个数计算为2个问题分析:由于n的位数不确定,所以一旦n为多位数,需要将每一位数字剥离再做判断,这样写起来比较麻烦。首先我们需要一个计数器,并给计数器赋0,然后我们可以把k转换成字符串类型,然后架上两层循环:外层用来遍历0~n,将每一个数转换为字符串...

2019-02-15 18:43:04 119

原创 JS的lintcode学习笔记(2)—— 尾部的零

问题描述:设计一个算法,计算出n阶乘中尾部零的个数问题说明:时间复杂度为O(logN)问题分析:我们已知,0在乘法中由2 X 5得到,而在一组连续数中,2的数量肯定远远大于5的数量,所以,计算阶乘中尾部零的个数,即转换为计算在1~n中5的个数。好了,这么一说相信很多人都能马上想到用一个while循环,不断让n/5,直到n为0,然后把每次循环的商相加就是我们要求的值。但!是!JS不同于C...

2019-02-15 17:18:59 229

原创 JS的lintcode学习笔记(1)—— A+B问题

问题描述:给出两个整数A和B,输出他们的和问题说明:a和b都是32位整数,可以使用位运算符问题分析:看到这个题目,第一反应当然是直接 return a+b ,so easy~  当然,这是解决问题的一种方法,但这道题还有别的解决办法。说道加法,除了 “+” 等算数运算符,我们还可以用位运算符进行运算。即:“^”异或、“&”与、“<<”左移、“>>”右移等...

2019-02-15 16:50:21 416

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除