题目描述
有n张卡片,分别标有数字1~n。有一天Silence把他们按某种序列排好,然后从第一张开始取出一张,再拿一张放到最后面,再取出一张,再拿出一张放到最后面...知道n张卡片全部取走。把取出的卡片按取出的顺序排好,正好是1,2,3,4,....,n。
现在,告诉你n,Silence希望你帮他计算原来的序列的逆序数。
例如,n=4时,原来的序列应该是1,3,2,4。这样,先取出卡片1,再...
分类:
其他好文 时间:
2014-05-23 07:41:26
阅读次数:
221
为什么要有SerialVersionUID?应该说为什么要手动声明一个ServialVersionUID。因为只要你做了序列化了,JAVA就会自动给你加上一个SerialVersionUID。
Java强烈建议我们显式的声明一个SerialVersionUID,因为SerialVersionUID默认值的计算是根据类的各个方面得来的(属性,方法。。。)。
详情:http://docs.orac...
分类:
其他好文 时间:
2014-05-23 07:37:23
阅读次数:
175
剑指offer上的第22题,九度OJ上AC。
题目描述:
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。
输入:
每个测试案例包括3行:
第一行为1个整数n(1<=n<=100000),表示序列的长度。
第二行包含n个整数,表示栈的压入顺序。
第三行包含n个整数,表示栈的弹出顺序。
输出:
对...
分类:
其他好文 时间:
2014-05-22 10:10:28
阅读次数:
286
代码a
#include
#define maxn 1005
int
a[maxn];
int
dp[maxn];
int
max(int x,int
y)
{
return
x>y?x:y;
}
int
main()
{
int
t,n;
scanf("%d",&t);...
分类:
其他好文 时间:
2014-05-22 09:16:47
阅读次数:
192
一、算法思想描述 1、设置一定的步长 2、将整个序列根绝步长分成若干个子序列。对每个子序列执行直接插入排序 3、重复步骤2,直到步长为1(包含1)二、算法分析 希尔排序,也叫缩小增量排序,是插入排序的一种,他对插入排序进行了一定的优化。 时间复杂度:一般认为,在某些序列中可以达到O(n^1.3) 空间复杂度:O(1) ...
分类:
其他好文 时间:
2014-05-22 08:49:36
阅读次数:
213
1.网络编程中设计并发服务器,使用多进程与多线程 ,请问有什么区别
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
区别:两者都可以提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点:线程执行开销小,...
分类:
编程语言 时间:
2014-05-22 06:16:44
阅读次数:
386
原理:每隔sp(整数)个数即取数并判断大小,交换,先构造局部有序序列,直到sp为1,构造完整的有序序列。
给出一组数据,如下:
0
1
2
3
4
5
6
7
8
9
49
38
65
97
76
13...
分类:
其他好文 时间:
2014-05-20 15:03:41
阅读次数:
257