码迷,mamicode.com
首页 >  
搜索关键字:逆序对    ( 1060个结果
常用/常考算法总结
转自tangjz的博客...基础算法模拟搜索广度优先搜索(BFS)优化:双向BFS深度优先搜索(DFS)优化:折半DFS迭代加深搜索(IDS)启发式搜索(Astar)优化:IDAstar优化:剪枝、位运算排序冒泡排序/选择排序基数排序/桶排序计数排序插入排序/希尔排序快速排序归并排序/求逆序对数堆排...
分类:编程语言   时间:2015-02-23 10:50:21    阅读次数:330
POJ 2299 Ultra-QuickSort (树状数组or 归并排序分治求逆序对数)
题目大意就是说帮你给一些(n个)乱序的数,让你求冒泡排序需要交换数的次数(n 显然不能直接模拟冒泡排序,其实交换的次数就是序列的逆序对数。 由于数据范围是 0 ≤ a[i] ≤ 999,999,999所以先要离散化,然后用合适的数据结果求出逆序 可以用线段树一步一步添加a[i],每添加前查询前面添加比它的大的有多少个就可以了。 也可用树状数组,由于树状数组求的是(1...x)的数量和所以每...
分类:编程语言   时间:2015-02-22 20:47:46    阅读次数:200
Openjudge-计算概论(A)-DNA排序
描述:给出一系列基因序列,由A,C,G,T四种字符组成。对于每一个序列,定义其逆序对如下:序列中任意一对字符X和Y,若Y在X的右边(不一定相邻)且Y 2 struct DNA 3 { 4 char a[50];//一个基因序列 5 int num;//本基因序列的逆序对个数 6...
分类:编程语言   时间:2015-02-20 23:07:34    阅读次数:318
POJ 3067 Japan
题意: 东海岸有x个城市,西海岸有y个。x与y 之间有很多高速公路。问k条路有多少个交叉点。 我就是求的逆序对,把east当作 pos 按照从大到小排序。然后插入。接下来的就跟求逆序对的一样了。 线段树或者数状数组都能过。 注意最后要用long long。 (午夜一发,写完吃个面包睡觉。 #include #include #include #include #include #in...
分类:其他好文   时间:2015-02-17 02:07:41    阅读次数:218
[算法导论]练习2-4.d求排列中逆序对的数量
题目:给出一个确定在n个不同元素的任何排列中逆序对数量的算法,最坏情况需要Θ(nlgn)时间。(提示:修改归并排序。)思路:修改从大到小排序的归并排序。 归并排序分为三步:分解、解决、合并。 分解:将排列A分解为A1、A2两个子排列。 解决:递归的从大到小排列A1和A2,在此同样递归的求解A1...
分类:编程语言   时间:2015-02-10 11:02:33    阅读次数:251
BZOJ 2141 排队 树套树
题目大意:给出一个数列,支持交换两个数字的操作,问每次操作之后的逆序对数量。 思路:数字比较大,先离散化。然后先求一次总逆序对,每次交换两个数字的时候用树套树维护一下逆序对的总数就可以了。。 好像树套树的常数略大,正解应该是分块。。 CODE: #include #include #include #include #define MAX 20010 using...
分类:其他好文   时间:2015-01-30 09:18:18    阅读次数:272
Leetcode#98 Validate Binary Search Tree
原题地址中序遍历二叉树,如果出现逆序对,则说明不是合法BST代码: 1 bool isValidBST(TreeNode *root) { 2 stack st; 3 int last = 0; 4 bool hasLast = false; 5 ...
分类:其他好文   时间:2015-01-29 19:01:22    阅读次数:154
第五届蓝桥杯C/C++本科B组(真题试做)(9~10)
第九题 迷宫取宝 标题:地宫取宝 X 国王有一个地宫宝库。是 n x m 个格子的矩阵。每个格子放一件宝贝。每个宝贝贴着价值标签。 地宫的入口在左上角,出口在右下角。 小明被带到地宫的入口,国王要求他只能向右或向下行走。 走过某个格子时,如果那个格子中的宝贝价值比小明手中任意宝贝价值都大,小明就可以拿起它(当然,也可以不拿)。 当小明走到出口时,...
分类:编程语言   时间:2015-01-29 17:36:58    阅读次数:179
hdu 2838 求逆序对
/***************************************************************************************************************** 题意:给你N个排列不规则的数,任务是把它从小到大排好,每次只能交换相邻...
分类:其他好文   时间:2015-01-29 14:09:39    阅读次数:175
hdu 1394 Minimum Inversion Number(线段树or树状数组)
题意:给你N个数,N个数是0~N-1的一个全排列。要求统计它的所有形式的逆序对的最小值。它的所有形式的意思是,不断将数组开头的第一个数放到数组的最后面。逆序对:iaj思路:树状数组也可以,,看代码代码:const int maxn = 50005;int sum[maxn> 1; build(...
分类:编程语言   时间:2015-01-25 19:32:20    阅读次数:122
1060条   上一页 1 ... 93 94 95 96 97 ... 106 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!