七大排序算法--c语言是实现
七大排序算法如下:
交换排序:快速排序quicksort,冒泡排序bubblesort
选择排序:直接选择排序selectionsort,堆排序maxheapsort
插入排序:直接插入排序insertsort,希尔排序shellsort
合并排序:归并排序mergesort
习题 12:因子分解★
输入n(1 <= n <= 1e9),有多组测试数据:
616
27
输出:
616 = 2^3 * 7 * 11
27 = 3^3
(注意输出空格,但行末不要有空格)
难度:for beginner
http://www.yzfy.org/dis/listpost.php?tid=6&extra=page=1
先得到一个数N
M = N开平方。
用N除以2到M。可整除,得到的就是一个因子。
把N除以上面的因子后再进行上面的一步。直到无法整除,则此时它为质数了。
把这些值相加就OK了。
平衡符号,语法检查
程序的功能实现符号的平衡。符号数据输入为大括号[ ]或者中括号 [ ]
[root@lumotuwe] gcc main.c stack.c -o main
[root@lumotuwe] ./main [ { } ] { [ ] }
多趟桶式排序bucket sort
多趟桶式排序bucket sort。数据输入:有10个数,范围为0到999。
[root@lumotuwe] gcc cas.c -o cas
[root@lumotuwe] ./cas 64 8 216 512 27 729 0 1 343 125
c语言求最大值
已知一组数据,编程实现找到其中的最大值。有很多的方法可以解决这个问题。如冒泡法。还有一种好一点的算法,在这组数据中挑出一部分数据按照升序的排列,如存储在数量为K的数组中。然后再把其他剩下的数据和已经排列好的数据的最大值相比较。如果比最大值大下,则舍弃。反之则把该数存入到数组,将数组中的最小数抛弃。循环到最后,数量为K的数组中的最后一个数据就是这组数据中的最大的那个。
冒泡法求最大值
c语言实现冒泡法求最大值。
运行环境:linux。 编译程序:gcc 。
编译程序的命令为 :[root@linux] gcc slp1.c -o slp1
运行时输入命令的格式为:如(求出12,3,6,9,3中的最大值)请输入
[root@linux] ./slp1 12 3 6 9 3