剑指Offer || leetCode
我是刺猬姑娘
这个作者很懒,什么都没留下…
展开
-
剑指offer-[构建乘积数组]-JavaScript实现
题目描述给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不能使用除法。思路分析假设数组A为【2,3,4,5】则B中的各个元素值分别为:B0为【1,3,4,5】的乘积B1为【2,1,4,5】的乘积B2为【2,3,1,5】的乘积B3为【2,3,4,1】的乘积...原创 2019-05-13 23:10:03 · 213 阅读 · 0 评论 -
剑指offer-[表示数值的字符串]-JavaScript实现
自己做题的笔记,并不是最优解。如果有更好的思路欢迎大家告诉我,一起进步!题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100",“5e2”,"-123",“3.1416"和”-1E-16"都表示数值。但是"12e",“1a3.14”,“1.2.3”,"±5"和"12e+4.3"都不是。思路分析一个数值的组成有:符号(+ -),数字,点(.),指数位...原创 2019-05-10 11:26:02 · 174 阅读 · 0 评论 -
剑指offer-[字符流中第一个不重复的字符]-JavaScript实现
这道题我的答案没有在牛客网上通过。但是我自己跑测试用例的结果与牛客网上显示的结果不一致。我觉得我的测试结果是正确的。翻了一下牛客网的讨论也没有看到JS的答案T.T 下面写一下我的思路和代码,如果有大神能跟我讨论一下就更好了~题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“g...原创 2019-05-11 22:28:56 · 272 阅读 · 1 评论 -
剑指offer-[数字在排序数组中出现的次数]-JavaScript实现
题目描述统计一个数字在排序数组中出现的次数。思路分析1这个思路和做法比较简单粗暴。由于是排序数组,所以相同的数字肯定是排在一起的。所以用两个循环,一个从头找一个从尾找,找到第一次出现的位置和最后一次出现的位置。再相减即可。具体JS代码实现1function GetNumberOfK(data, k){ // write code here var start = -1...原创 2019-05-16 19:41:38 · 188 阅读 · 0 评论 -
剑指offer-[左旋转字符串]-JavaScript实现
我感觉这道题用JS用天生的优势。因为JS的数组头和尾都可以进行操作。用好push和shift这道题就非常简单~题目描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?O...原创 2019-05-12 21:51:17 · 137 阅读 · 0 评论