直接插入排序
算法思想:直接插入排序是一种最基本的插入排序方法,其基本操作是将第i个记录插入到前面i-1个已排好序记录中。具体过程为:将第i个记录的关键字Ki,依次与前面记录的关键字K(i-1),K(i-2),,,,K1进行比较,将所有关键字大于Ki的关键字记录依次向后移动一个位置,直到遇见一个关键字小于或等于Ki的记录Kj此时Kj后面必为空位置,将第i个记录插入空位置即可。完整地插入排序是从i...
分类:
编程语言 时间:
2015-07-11 16:51:35
阅读次数:
142
各类排序算法总结一.排序的基本概念排序(Sorting)是计算机程序设计中的一种重要操作,其功能是对一个数据元素集合或序列重新排列成一个按数据元素某个项值有序的序列。有n个记录的序列{R1,R2,…,Rn},其相应关键字的序列是{K1,K2,…,Kn},相应的下标序列为1,2,…,n。通过排序,要求...
分类:
编程语言 时间:
2015-07-08 22:07:10
阅读次数:
166
二叉树中第k层节点个数
递归解法:
(1)如果二叉树为空或者k1,返回左子树中k-1层的节点个数与右子树k-1层节点个数之和
二叉树叶子节点个数
递归方式
(1)如果给定节点pRoot为NULL,则是空树,叶子节点为0,返回0;
(2)如果给定节点pRoot左右子树均为NULL,则是叶子节点,且叶子节点数为1,返回1;
(3)如果给定节点pRoot左右子树不都为NULL,则不是叶子节点,以pRoot为根节点的子树叶子节点数...
分类:
其他好文 时间:
2015-07-08 00:36:06
阅读次数:
175
请使用awk命令将如下两份文件中名字相同的两行合并起来
A文件:
孙行者50岁
行者孙500岁
者行孙5000岁
孙者行50000岁
B文件:
行者孙男
者行孙男
孙行者男
孙者行男
输出效果:
孙行者50岁男[root@localhost~]$catab|sort-k1|awk‘BEGIN{t=""}{t=$1;if(tt==t){printf("%s",$2)..
分类:
其他好文 时间:
2015-07-06 20:13:49
阅读次数:
112
一个红球可以分裂为3个红球和一个蓝球。
一个蓝球可以分裂为4个蓝球。分裂过程下图所示:
设当前状态为k1,下一状态为k2。
k1的第x行红球个数 * 2 ? k2第2*x行的红球个数。
k1的第x行红球个数 ? k2第2*x+1行的红球个数。特殊处理一下上下边界,递归求解就可以搞定了。#include
#include
#include <math....
分类:
其他好文 时间:
2015-06-29 14:53:05
阅读次数:
122
题目大意:一个有n个数的集合,现在要求将他分成m+1个子集,对子集i设si表示该集合中最大数与最小数的差的平方。求所有si的和的最小值。n2num[j]*(num[k1+1]-num[k2+1])令yk1=f[i-1][k1]+num[k1+1]^2,xk1=num[k1+1],则上式可以转化为:(...
分类:
其他好文 时间:
2015-06-24 14:38:35
阅读次数:
118
1 >> clear 2 node = [1 1;-1 1;-1 -1;1 -1]; % nodes squar 3 elem = [1 2 3 4]; % elements 4 belong=1:size(elem,1); bdEdge=[1 1 1 1]; 5 for k1=1:2 6...
分类:
其他好文 时间:
2015-06-20 13:10:58
阅读次数:
111
题目大意:有一个升降机,它有两个按钮UP和DOWN,给你一些数i表示层数,并且每层对应的Ki,如果按UP按钮,会从第i层升到第i+Ki层;如果按了DOWN则会从第i层降到第i-Ki层;并规定能到的层数为1到N,现在的要求就是给你N,A,B和一串数K1到Kn,问你从A到B,至少按几下按钮。构造一个图,...
分类:
其他好文 时间:
2015-06-18 23:47:36
阅读次数:
135
poj 1845 Sumdiv
题意:
给出两个数a,b,求a^b的约数的和,结果模9901。
限制:
0
思路:
约数和公式:
对于已经分解的整数a=(p1^k1)*(p2^k2)*(p3^k3)*....*(pn^kn)
则,a的所有约数之和为
S=(1+p1+p1^2+p1^3+...p1^k1) * (1+p2+p2^2+p2^3+….p2^k2) * (1+p...
分类:
其他好文 时间:
2015-06-16 09:29:49
阅读次数:
120
题目:给你一个多项式(x1+x2+..+xk)^ n,求x1^k1*x2^k2*..*xn^kn的系数。
分析:组合数学,多项式系数。
系数为:C(n,k1)* C(n-k1,k2)* .. *C(n-k1-..-kn-1,kn)= n! /(k1!k2!..kn!)。
说明:好久没怎么刷题了╮(╯▽╰)╭。
#include
using namespace ...
分类:
其他好文 时间:
2015-06-13 14:17:42
阅读次数:
119