首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言 | 冒泡排序比较大小

例23:C语言实现从小到大对10个数进行排序,要求使用冒泡排序实现。 解题思路:排序的规律有两种:一种是“升序”,从小到大;另一种是“降序”,从大到小。...源代码演示: #include//头文件  int main()//主函数  {   int i,j,t;//定义整型变量    int array[10];//定义数组大小    printf...i=0;i<10;i++)//循环输出10个数    {     printf("%d ",array[i]);   }    printf("\n");//换行    return 0;//函数返回为...以上就是很著名的“冒泡排序”,也称为“起泡排序”,读者通过此例对以后学习快速排序、堆排序等会有所启示。 留个问题,读者请思考从到小该如何排序呢?...C语言冒泡排序比较大小 更多案例可以go公众号:C语言入门到精通

1.3K2727
您找到你想要的搜索结果了吗?
是的
没有找到

【Python】数据容器总结 ② ( 数据容器元素排序 | 字符串大小比较 | 字符大小比较 | 长短一样的字符串大小比较 | 长短不一样的字符串大小比较 )

一、数据容器元素排序 调用 sorted 函数 , 可以对 数据容器 中的元素进行排序 ; sorted(数据容器变量, [reverse=True]) 上述两个参数 , 第一个 数据容器变量 参数 ,...: [5, 4, 3, 1] print(f"反向排序: {sorted_list_reverse}") 执行结果 : 原数组: [4, 5, 1, 3] 正向排序: [1, 3, 4, 5] 反向排序...: [5, 4, 3, 1] 二、字符串大小比较 1、字符大小比较 字符 大小比较 , 是通过 字符 在 ASCII 码表中的 对应 数字 进行比较的 ; 2、长短一样的字符串大小比较 字符串 之间的比较...代码示例 : """ 字符串比较 代码示例 """ result = "abc" > "abd" print(result) # False 执行结果 : False 3、长短不一样的字符串大小比较...如果长短不一样的字符串大小进行比较 , 也是按位进行比较 , 有字符的位比没有字符的位要大 ; 举例说明 : “a” 与 “ab” 进行比较 ; 先比较第一位 , 都是 a , 相等 ; 再比较第二位

13230

BigDecimal比较大小

BigDecimal比较大小 BigDecimal BigDecimal,是一种java.math包中提供的一种可以用来进行精确运算的类型,在进行金额表示、金额计算等场景,不能使用double、float...是对象,所以是无法用==来比较两个数字的是否相等。...前面,我们解释了BigDecimal的equals方法,其实不只是会比较数字的,还会对其标度进行比较。 所以,当我们使用equals方法判断判断两个数是否相等的时候,是极其严格的。...compareTo比较 针对上面equals比较比较严格的情况,如果只想比较呢,BigDecimal为我们提供了compareTo方法。...我们可以看到BigDecimal中compareTo的JavaDoc注释,compareTo只比较,其中返回结果:-1表示小于,0表示等于,1表示大于 一般BigDecimal比较用compareTo

5310

比较排序-计数排序

当然是有的那就是计数排序,首先计数排序并不是比较排序算法,而是利用数组来实现的一种算法,想象一下这样一个场景,假如给数组{1,4,5,1,3}做一个排序,我们可以看出其中最大的就是5,但是怎么利用数组实现排序呢...首先我们知道数组{1,4,5,1,3}中最大是5,那我们至少需要一个下标能够达到5吧,所以我们定义一个长度为最大加1长度的计数数组,也就是6,同时给所有下标的默认为0,然后遍历要排序的数组{1,4,...虽然上面代码实现了排序,但是存在很多问题。 1.如果要排序的数组是这样的数组{90,93,92,92,95},难道我们还是要根据最大为95开一个长度为96的计数数组吗?...如果存在负数的情况,那么我们找到最小的负数,给负数加上一个数,使得他变成正数,当然你不可能只加这一个地方,应该是这个数组每一位都要加上这个,这样才能保证不影响大小,但是你不能加了后面就不管了吧,所以在把结果放到结果数组中时...我们来看看计数排序的时间复杂度和空间复杂度,首先我们找最大和最小执行了n次,然后计数数组产生有需要遍历n次,也就是O(2*n),然后我们再变形了一次计数数组,就是k次,最后我们又遍历了一次原数组,

51161

排序算法比较

(2)学习排序原理时,可能编的程序里面要排序的元素都是简单类型,实际上真正应用时,可能是对一个复杂类型(自定义类型)的数组排序, 而排序的键值仅仅只是这个元素中的一个属性,对于一个简单类型,数字就是其全部意义...而稳定的排序会保证比较时,如果两个学生年龄相同,一定不会交换。 那也就意味着尽管是对“年龄”进行了排序,但是学号顺序仍然是由小到大的要求。...比较拗口,举个例子:序列5 8 5 2 9, 我们知道第一趟选择第1个元素5会与2进行交换,那么原序列中两个5的相对先后顺序也就被破坏了。 所以选择排序不是一个稳定的排序算法。...可以发现,在1个或2个元素时,1个元素不会交换,2个元素如果大小相等也没有人故意交换,这不会破坏稳定性。 那么,在短的有序序列合并的过程中,稳定是是否受到破坏?...在一个长为n的序列,堆排序的过程是从第n/2开始和其子节点共3个选择最大(大顶堆)或者最小(小顶堆),这3个元素之间的选择当然不会破坏稳定性。

44820

python等值和大小比较

等值、大小比较 在python中,只要两个对象的类型相同,且它们是内置类型(字典除外),那么这两个对象就能进行比较。关键词:内置类型、同类型。...所以,两个对象如果类型不同,就没法比较,比如数值类型的数值不能和字符串类型的数值或字母比较。 对于python中的等值、不等值、大小比较的规则为何如此,以后学了Class的运算符重载,自然就会知道。...>>> bool([1,2,[3,3]] < [1,2,[3,4]]) True 注意,None对象只能参与等值和不等值比较,不能参与大小比较。...它们都是比较表达式,但却是完全不同的比较方式: "=="和"!="符号比较的是数据的是否相等、相同 "is"比较的是两个数据对象在内存中是否是同一个数据对象。...换句话说,比较的是内存地址 等号比较很容易理解,只要相等就为True,否则为False。 is比较的是内存中的数据对象。

3.1K30
领券