自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 js闭包个人理解--to be continued

1、闭包只能取得包含函数中任何变量的最后一个值,因为闭包所保存的是整个变量对象。      如:function createF(){                   var res=[];                   for(var i=0;i                         res[i]=function(){ return i;}

2016-05-03 21:51:08 333

原创 OS、SQL、计网、计组review

OS1、进程:资源分配和独立运行的基本单位。程序段、相关数据段和PCB(进程控制块)组成进程实体。      线程:调度和分派的基本单位。      一个进程可以包含多个线程,此时的进程已经不再是一个可执行的实体。2、产生死锁的原因:竞争资源、进程间推进书序非法。      产生死锁的4个必要条件:互斥条件、请求并保持、不剥夺条件、环路等待条件。3、存储器管理:页/页面

2016-05-01 22:43:14 707

原创 21. Merge Two Sorted Lists--java

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode(int x) { val = x; } * } */public class Solution {    public List

2016-04-26 13:00:46 487

原创 reverse linked list--javascript

刚开始没做出来,因为:①没太弄清楚js可以怎么表示链表;②这个属于排序问题--使用头插法排序。var reverseList = function(head) {    if(!head || !head.next)        return head;    var p = new ListNode(-1);    p.next=head;    head=head.n

2016-03-08 20:04:13 424

原创 happy number--JavaScript

这道题的关键在于对程序进入死循环时的处理~var isHappy = function(n) {    if(n        return false;    var tmp=(n+"").split('');   //将n的每一个数字拆分存到数组(从高位到 低位存储)    var res=0;    var loop=[n];    while(res!=1){

2016-03-02 21:27:56 438

原创 Isomorphic Strings--JavaScript

刚开始看到这道题,自然想直接用word pattern的方法,但是在这里会超时,因为那个使用了两重循环,所以这里的关键点在于indexOf函数的使用:var isIsomorphic = function(s, t) {    var aS=s.split('');    var aT=t.split('');    if(aS.length!=aT.length)      

2016-03-02 20:48:13 278

原创 Valid Anagram--JavaScript

实在是一道简单题,但是刚开始两种方法都使用了两重循环,所以超时,后来使用了数组中的sort()函数,代码如下:var isAnagram = function(s, t) {    aS=s.split('');    aT=t.split('');    if(aS.length!=aT.length)        return false;    aS=aS.so

2016-03-02 19:19:34 301

原创 valid sudoku--JavaScript

这道题纠结了好久~~最开始没看懂题目,以为整个大的九宫格中的数字也不能重复出现~~后面又纠结于js是否有map,怎样使用~~~暂时通过的最笨的解决办法代码如下:/** * @param {character[][]} board * @return {boolean} */var isValidSudoku = function(board) {    //每一行 

2016-03-02 19:00:10 400

原创 wordPattern--JavaScript

最开始看到题目时,总以为str的 长度可以是pattern的几倍,并且想着先判断pattern的模式再来str中验证,而没有想到可以一边判断pattern模式一边验证str,所以弄得整个的代码很复杂。看了解题思路之后,才反应过来,这个实在是一个简单题。代码如下:var wordPattern = function(pattern, str) {    aPattern=pattern.

2016-03-01 17:19:02 321

原创 moveZeroes--JavaScript

var moveZeroes = function(nums) {    var count=0;  //计算数组中0的个数    var n=0;      //用来表示数组的 新序列    for(i=0;i        if(nums[i]==0){            count++;        }        else            nu

2016-02-27 15:11:38 350

原创 Pascal's Triangle I && II--JavaScript

var generate = function(numRows) {    var res=[];    for(i=0;i        res[i]=[];    }    for(i=0;i        for(j=0;j            if(i==0)                res[i]=[1];            else if(

2016-02-27 11:42:31 330

原创 Plus One--JavaScript

正确解答的思路:若数组长度改变,那么肯定是数组中所有的数字都是9。所以可以先考虑数组长度是否改变,然后分别进行考虑。显然这里应该是可以进行代码简化的,然而我懒,现在不想简化。正确代码如下:var plusOne = function (digits) {    var temp=0;   //用来表示在原数组长度下所能表示的最大数    var count=0;  //用来表示数组

2016-02-27 11:21:45 438

原创 rotate array--JavaScript

最开始的错误解答如下:var rotate = function(nums, k) {    for(i=0;i        temp=nums[i];        nums[i]=nums[nums.length-1-i];        nums[nums.length-1-i]=temp;    }    for(i=0;i        temp=num

2016-02-26 11:38:24 323

原创 Summary Ranges--JavaScript

刚开始就没看懂题目,后面才知道是需要将已排序数组进行分成几个连续的字符段。var summaryRanges = function(nums) {    var res=[];    var num=0;    var start=0;    for(i=0;i        if(nums[i]+1==nums[i+1]){            continue;

2016-02-25 11:03:24 332

原创 Implement strStr--JavaScript

题目要求找到子字符串在字符串中第一次出现的位置;刚看到题目,想得过于简单,以为子字符串只有一个字符,显然是错的;var strStr = function(haystack , needle){    if(needle.length==0) return 0;    if(needle.length>haystack.length) return -1;    num=0;

2016-01-05 11:25:06 461

原创 longest common prefix

简单题--var longestCommonPrefix = function(strs) {    if(strs=="") return "";    if(strs.length==1) return strs[0];    for(i=0;i        if(strs[i]=="") return "";  //js中怎样终止程序运行?        if(st

2015-12-30 14:11:23 539

原创 remove duplicates from sorted array

将有序数组中重复的数字去掉,返回新的数组长度。乍一看,这道题很简单。想法:从前往后比较,如果两个数字相等,则后一个数字等于它本身的后一个数并且此时len--;最后返回len。但是这样做有一个问题:如果是数组的最后一个与前面的数相等,则此时,会溢出,会取到数组之外的一个数。

2015-12-30 11:34:49 321

原创 Roman to integer

将1-3999的罗马数字变成整数。关键在于知道罗马数字的形成规则,每两个数字比较,如果左边的数大于右边的数,则加起来;反之,则右边的数减去左边的数。代码如下:var romanToInt = function(s) {    res=0;    temp=new Array();    for(i=0;i        switch(s.charAt(i)){   

2015-12-28 10:57:11 425

原创 Palindrome Nmber

由于题目要求空间复杂度味O(1),所以不能考虑将数字变成字符串,并且之前reverse中会有溢出的问题,所以,可以使用之前在网络上看到的reverse的简单解法,即通过整除取余比较最高位数与最低位数。错误代码如下:var isPalindrome = function(x) {    if(x    else if(x    var num=0;  //表示x的位数    

2015-12-27 20:37:47 379

原创 Reverse Integer leetcode--JavaScript

看到题目之后的第一反应是直接将数字转换成字符串,然后反转,最后再将字符串变成integer;但是这样刚开始的时候一直报错,因为边界溢出的问题,最后看到需要添加一个判断语句,处理溢出情况(也就是return前面的那一句。)var reverse = function(x) {    str=x.toString();    res=new Array();    n=0;

2015-12-26 11:38:24 511

原创 leetcode ZigZag Conversion

刚开始看完题目之后,按照列出来的形式,一直将变型之后的数组当做一个二位数组形式,所以就想着先把输入的字符串按照条件变成一个二维数组,然后再将成型的二维数组转换成字符串。但是显然这样很复杂,而且我也没有做出来。思路有错!!百度之后,思路都是:直接用一个一维数组按照ZigZag顺序接收字符串的字符。这样就需要推算出是按照怎样的先后顺序获取字符串数组的。对于第一行和最后一行比较简单,所取的字符

2015-12-26 11:35:15 358

空空如也

空空如也

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

TA关注的人

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