题目:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。思路:归并排序的合并过程。主要是考虑合并两个有序序列时,计算逆序对数。对于两个升序序列,设置两个下标:两个有序序列的末尾。每次比较两个末尾值,如果前末尾大于后末尾值,则有...
分类:
编程语言 时间:
2015-08-13 17:28:49
阅读次数:
194
一、sort二、qsort头文件:stdlib.h1.int#include#include#includeusing namespace std;int cmp(const void *a,const void *b){ return *(int *)a-*(int *)b;//升序}int...
分类:
其他好文 时间:
2015-08-13 14:23:16
阅读次数:
128
DescriptionGiven a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the ma...
分类:
其他好文 时间:
2015-08-13 12:02:10
阅读次数:
82
/*
描述:
输入整型数组和排序标识,对其元素按照升序或降序进行排序
接口说明
原型:
void sortIntegerArray(Integer[] pIntegerArray, int iSortFlag);
输入参数:
Integer[] pIntegerArray:整型数组
int iSortFlag:排序标识:0表示按升序,1表示按降序
输出参数:
无
返回值:
...
分类:
其他好文 时间:
2015-08-12 19:30:18
阅读次数:
426
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上...
分类:
编程语言 时间:
2015-08-11 23:27:20
阅读次数:
182
比赛描述:
有一些A、C、M组成的字符串,将其按字符A排序。
输入:
一组测试数据,输入数据由若干行组成,每行是字符A、C或M组成的字符串。(每个字符串长度不超过1200)
输出:
对所有输入的数据,先按字符A的个数进行升序排序,如果字符A的数量相等,再按出现的先后顺序排序,每行输出一个字符串。
样例输入:
ACM
MCA
...
分类:
编程语言 时间:
2015-08-11 18:48:00
阅读次数:
142
如果数组元素已经排过序(升序),那我们搜索某个元素就不必遍历整个数组了。在下面给出的算法代码中,到任何一点,假设当前的arr[i]值大于搜索的值data,就可以停止搜索了。 #include // a function to search "data" in an array "arr" of si...
分类:
其他好文 时间:
2015-08-10 21:50:38
阅读次数:
106
使用TreeMap统计单词个数,并输出单词和书目,单词按升序排列
TreeMap的特点是无重复元素,且元素的key值既可以按默认的Comparable接口排序也可以按Comparator比较器排序,为TreeMap设计一个比较器,此比较器要实现Comparator接口//可以扩展到从文件中或者从控制台输入单词,来统计,只需要加入流就行了
import java.util.Map;
import j...
分类:
编程语言 时间:
2015-08-10 14:54:05
阅读次数:
155
说明作者:那谁blog: http://www.cppblog.com/converse转载请注明出处.二分查找算法基本思想二分查找算法的前置条件是,一个已经排序好的序列(在本篇文章中为了说明问题的方便,假设这个序列是升序排列的),这样在查找所要查找的元素时,首先与序列中间的元素进行比较,如果大于这...
分类:
编程语言 时间:
2015-08-10 13:33:24
阅读次数:
145
该阵列是按升序排列,通过循环数组后动。肯定是有左半或半或升序的一部分。代码:public class SearchRotateArray { public static int search(int a[], int l, int u, int x) { while(la[m]){ l=m...
分类:
移动开发 时间:
2015-08-09 22:26:38
阅读次数:
152