BNU 4208 Bubble sort (想法题)

原创 2013年12月03日 08:53:26

http://acm.bnu.edu.cn/bnuoj/problem_show.php?pid=4208


注意题目是让求趟数,所以比较原序列与排序后序列中位置相差最大的就是答案。


PS:也可以用反序表来思考。参见《计算机程序设计艺术》第三卷5.1.1


完整代码:

/*136ms,1408KB*/

#include<cstdio>
#include<algorithm>
using namespace std;

int a[10005], Map[10005];

int main()
{
	int n, t, i, maxn;
	scanf("%d", &t);
	while (t--)
	{
		scanf("%d", &n);
		for (i = 0; i < n; ++i)
		{
			scanf("%d", &a[i]);
			Map[a[i]] = i;
		}
		sort(a, a + n);
		maxn = 0;
		for (i = 0; i < n; ++i)
			maxn = max(maxn, Map[a[i]] - i);
		printf("%d\n", maxn);
	}
	return 0;
}

冒泡排序(Bubble Sort)原理及Java实现

冒泡排序 (Bubble Sort) 算法是一种基于交换的排序算法,其思想是,依次比较相邻元素的大小,如果反序,则进行交换,然后再进行下一次排序——如果数据集合的长度为n ,则下一次对前n-1的数据进...
  • sun_star1chen
  • sun_star1chen
  • 2014年01月14日 08:44
  • 1198

也谈冒泡排序(bubble sort)---两次‘优化’

冒泡排序和优化
  • wkupaochuan
  • wkupaochuan
  • 2013年03月12日 11:53
  • 1679

排序算法的时间复杂度比较(quick_sort;bubble_sort)

#include #include #include #include #include #include using namespace std; const int MAX...
  • Lethe_Allofyou
  • Lethe_Allofyou
  • 2015年11月22日 15:23
  • 698

C语言/C++|Bubble Sort(冒泡排序)

C语言: C++:
  • duolabaobao
  • duolabaobao
  • 2016年11月05日 18:48
  • 652

冒泡排序(Bubble_Sort)

冒泡排序算法是一个耳熟能详的算法,在我们学习计算机的专业课的时候,在课本中经常会见到该程序,作为一个非常简单的例子程序。如果你不能默写该算法,那么你就没学过计算机的相关课程。好了,不说闲话了。 冒泡...
  • u011456016
  • u011456016
  • 2015年12月09日 17:44
  • 368

图解排序算法及C语言实现之 ------ 冒泡排序:Bubble Sort

近来闲着没事,把数据结构温习了一遍,想着用图解的方式来描述一下排序的算法。好了,废话少说,下面进入正题。 先讲最简单的冒泡排序。         1.什么叫冒泡排序?             形象的说...
  • fuyongming
  • fuyongming
  • 2014年01月10日 14:26
  • 1486

排序算法之冒泡排序<Bubble_Sort>及其C语言代码实现

概述 冒泡排序是一种相对简单的排序,它每次比较相邻的两个元素,如果前者大于后者,则交换< swap >这两个元素(从小到大排序),这样每一趟比较就把大的元素沉入最后,形象的称之为“冒泡”,每走一趟,...
  • gl486546
  • gl486546
  • 2016年11月05日 23:00
  • 2161

冒泡排序Bubble sort

原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, 这样一趟过去后,最大或最小的数字被交换到了最后一位, 然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子 ...
  • maiwc
  • maiwc
  • 2016年07月21日 10:23
  • 236

冒泡排序(Bubble Sort)

经历了大学一年,再回首重新审视冒泡排序,可以看的更透彻,更明朗一些。 冒泡排序(Bubble Sort) 其实整个中心思想在于,一个有序的排列中,一定不会存在逆序对,所以它一遍遍的遍历,让...
  • qq_32635069
  • qq_32635069
  • 2016年08月16日 08:34
  • 77

冒泡排序Bubble sort

经典排序算法 - 冒泡排序Bubble sort 原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, 这样一趟过去后,最大或最小的数字被交换到了最后一位, 然后再从头开始进行...
  • yunliupan
  • yunliupan
  • 2013年11月11日 16:30
  • 378
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:BNU 4208 Bubble sort (想法题)
举报原因:
原因补充:

(最多只允许输入30个字)