码迷,mamicode.com
首页 >  
搜索关键字:数组    ( 87738个结果
2.16 求数组中最长递增子序列
题目: 求一个一维数组(N个元素)中最长递增子序列的长度 DP题 代码如下: #include using namespace std; const int MAXN = 100000; const int INF = 10000000; int minV[MAXN], lis[MAXN], Array[MAXN]; int n; //lis[i]表示从第i个元素开...
分类:编程语言   时间:2015-01-25 18:18:01    阅读次数:168
2.17 数组循环移位
题目:把一个含有N个元素的字符串右移K位,要求时间复杂度为O(N),且只允许使用两个附加变量。 例子: 字符串为:abcd1234,右移4位,结果变为:1234abcd 思路: 移动前跟移动后是有两段的顺序是不变的,所以可以把这两段看成两个整体 右移K位的过程就是把数组的两部分交换一下。 交换的过程:(1)逆序排列第一部分 (2)逆序排列第二部分 (3)再全部逆序! ...
分类:编程语言   时间:2015-01-25 18:16:08    阅读次数:210
Leetcode# 134 Gas station
原题地址非常经典的一道题。可以转换成求最大连续和做,但是有更简单的方法。基于一个数学定理:如果一个数组的总和非负,那么一定可以找到一个起始位置,从他开始绕数组一圈,累加和一直都是非负的(证明貌似不难,以后有时间再补)有了这个定理,判断到底是否存在这样的解非常容易,只需要把全部的油耗情况计算出来看看是...
分类:其他好文   时间:2015-01-25 18:05:12    阅读次数:141
JavaScript数组技巧
1.随机选择一个数组项var items = [1, 2, 'a', 3, 4, 'b', 5, 'c', 6, 119, 'd']; var randomItem = items[Math.floor(Math.random() * items.length)];2.将参数对象转换为数组var.....
分类:编程语言   时间:2015-01-25 18:00:43    阅读次数:192
指针初窥
突然发现题目写的有些大,一下子不知道应该怎么写了//改变一个数据,需要数据的地址,也就是指针,int需要int*//改变一个指针变量,需要指针的地址,二级指针,int*需要int **//改变一个二级指针,需要二级指针的地址,三级指针,int**需要int ***//改变一个指针,指针指向数组,需要...
分类:其他好文   时间:2015-01-25 17:56:46    阅读次数:110
HDU 1026 Ignatius and the Princess I
这个题目一开始没想到用优先队列,或许说没学过优先队列,结果卡死了。然后看了别人的题解,原来如此,基本方法就是BFS。 优先队列的基本用法:http://blog.csdn.net/baochunzhi/article/details/7664422,讲解还是比较详细。 这题还有一个注意点就是如何输出,这里就要注意前后的关系,我是用next数组来表示前后两点的相对关系,具体可以见代码。输出的时候...
分类:其他好文   时间:2015-01-25 16:40:53    阅读次数:213
数组去重
方法一.var arr=[2,58,49,26,49];var o={};var new_arr=[];for(var i=0;i<arr.length;i++){ var k=arr[i]; if(o[k]=1){ new_arr.push(k); o[k]=1; }}alert(new_ar.....
分类:编程语言   时间:2015-01-25 16:28:00    阅读次数:221
快速找到数组总最小的数
var arr=[34,71,8,934,10];     var value=999;     var index=-1;     for(var i=0;i     {         if(arr[i]         {             value=arr[i];             index=i;         }     }     alert("...
分类:编程语言   时间:2015-01-25 15:18:43    阅读次数:192
大数n!
通常解决大数运算数据超出范围,溢出的问题。一般采用数组去模拟。求算n!可以看成是每次两个整数相乘的过程,因此可以模拟成大数相乘的过程。只是需要增加一些变量去存储中间的进位和当前位的数值。...
分类:其他好文   时间:2015-01-25 15:17:14    阅读次数:183
取数组中的最大值
方法一.var arr=[2,58,49,26,34];alert(arr.sort()[arr.length-1]);方法二.var arr=[2,58,49,26,34];alert(Math.max.apply(this,arr));
分类:编程语言   时间:2015-01-25 15:11:02    阅读次数:185
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!