2015-06-12 Jason Liao
在看 JavaScript 框架设计的时候,知道了 jQuery 可以批量处理是因为一个叫数组化的概念,然后再对数组对象进行扩展,让数组可以完成更多的事情,但在扩展之前,先来看看几个原型方法 Array.prototype.slice 继续阅读 »
2016-09-16 徐哲
冒泡排序 原理主要是倒序比较 代码如下: java class Untitled { public static void sortMaxMin(int array[]){ int i,j; int len = array.length; int temp; //Boolean flag = true; for (i = 0;ii;j--) { if (array[j-1]>array[j]) { temp = array[j]; 继续阅读 »
2014-11-02 Xie Jingyi
真是巧妙的算法! 比起树上倍增,Tarjan算法实现起来更为简单,一个DFS加并查集即可。缺点便是:需要先把所有的查询都读进来,并且要储存结果。复杂度为O(n+q)。 Code var sets: array [1..100] of longint; visited: array [1..100] of Boolean; a: array [1..100, 1..100] of Boolean; questions: array [1..1000] of record x, y: longint; ans: longint; end; qn, n, 继续阅读 »
2014-10-15 Xie Jingyi
链接:Link 耗时:0.699s 思路 dfs(t, x, y, d, s)表示当前走了t步,在(x,y),上一个方向为d,s为一个求和用的辅助变量。 当前位置无法走完剩下的路时直接回溯。可节省接近2s的时间。 ps: 这道题虽然没有明说每个城市只走一次,但它的确那样判了,这一点坑了我好久。 Code //Accepted. const dx: array [1..4] of integer = (1, 0, 0, -1); dy: array [1..4] of integer = (0, 1, -1, 0); dir: array [1..4] of char = ('e', 'n', 's', 继续阅读 »
2014-11-02 Xie Jingyi
var a: array [1..100, 1..100] of boolean; depth: array [1..100] of longint; father: array [1..100, 0..16] of longint; n, m, i, x, y: longint; root: longint; procedure dfs(x: longint); var i: longint; j: longint; begin depth[x] := depth[father[x][0]]+1; j := 1; while 1< 0 then 继续阅读 »
2016-08-07 Kevin
php
PHP 源码阅读array_combine() PHP 源码阅读之array_combine() array_combine() 在 ext/standard/array.c 中 array_combine(array $keys , array $values) — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值 继续阅读 »
2016-06-08 浩阳
content {:toc} 记录一下阅读蝴蝶书的笔记,本篇为书中以下章节的笔记:继承、数组和正则表达式。 继承 继承的两大好处:代码重用,引入一套类型系统的规范。 伪类 JavaScript 通过构造器函数产生对象。 继续阅读 »
2014-11-02 Xie Jingyi
问题描述:已知数组a以及若干个查询(x, y),求a[x~y]之间的最小值。 分析 不难发现:若取t使得$2^t\leq y-x+1$且$2^{t+1}>y-x+1$,则有: $$[x, x+t]\bigcup[y-t+1,y]=[x,y]$$ 运用二进制的思想,我们只需预处理出$i~i+2^k-1$之间的最小值,即可快速完成查询。设dp[i][j]为$i~i+2^j-1$之间的最小值,则有: $$dp[i][j]=min(dp[i][j-1],dp[i+2^{j-1}][j-1])$$。 Code var a: array [1..100000] of longint; dp: array [1..1000 继续阅读 »
2014-10-17 Xie Jingyi
链接:Link 状态:WA 分析 做了两个小时,很可惜最终还是WA了。非常奇怪——和网上的C++代码运行结果完全一样,但却WA了。不过,在这里我还是记录一下解题的过程。 这道题数据量很小,直接爆搜每个空位,用*, +, -, #0来代表符号或不填。 Code const operators: array [1..4] of char = ('*', '+', '-', #0); //符号 var s: string; _, n: integer; op: array [0..10] of char; yes: Boolean; function toValue(ch: char): 继续阅读 »
2016-12-21 AnnatarHe
最近写了一道数组去重的题,手抖,紧张,没写好。后来写了一会儿觉得还挺有意义的。现在做一下记录 Test case 测试用例如下 import test from 'ava' import unique from '../src/unique' 继续阅读 »