利用随机函数产生N个随机整数(10000以上),对这些数进行多种方法进行排序.具体要求如下:1) 至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、选择排序、希尔排序、

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/14 21:17:53

利用随机函数产生N个随机整数(10000以上),对这些数进行多种方法进行排序.具体要求如下:1) 至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、选择排序、希尔排序、
利用随机函数产生N个随机整数(10000以上),对这些数进行多种方法进行排序.具体要求如下:
1) 至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、选择排序、希尔排序、快速排序、合并排序、堆排序).并把排序后的结果保存在不同的文件中.
2) 统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法.

利用随机函数产生N个随机整数(10000以上),对这些数进行多种方法进行排序.具体要求如下:1) 至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、选择排序、希尔排序、
import java.io.RandomAccessFile;
import java.util.Vector;
import sun.misc.Sort;
public class TestSort {
\x05/**
\x05 * @param args
\x05 */
\x05public static void main(String[] args) {
\x05\x05 try {
\x05\x05\x05\x05//创建对象
\x05\x05\x05\x05 Vector arr = new Vector();
\x05\x05\x05\x05 String strs="";
\x05\x05\x05\x05 int count=10000;
\x05\x05\x05\x05 for (int i = 0; i < count; i++) {
\x05\x05\x05\x05\x05 arr.add(i + 1); //把 1-9 存入
\x05\x05\x05\x05 }
\x05\x05\x05\x05 for (int i = 0; i < count; i++) {
\x05\x05\x05\x05 int id=(int)(Math.random()*count);//随即取里面的数值 count控制随即大小
\x05\x05\x05\x05 strs+=arr.get(id)+",";
\x05\x05\x05\x05 arr.remove(id); //删除已经取走的值
\x05\x05\x05\x05 count--;
\x05\x05\x05\x05 }
\x05\x05\x05\x05Long d=0l;
\x05\x05\x05\x05strs="";
\x05\x05\x05\x05Long s1= sort1(arr);
\x05\x05\x05\x05\x05d=s1;
\x05\x05\x05\x05\x05strs="方法2,方法3 最快";
\x05\x05\x05\x05Long s2= sort2(arr);
\x05\x05\x05\x05if(d Long.parseLong(arr.get(out-1).toString())) {
\x05 continue;
\x05 }
\x05 int start = 0;
\x05 int end = out - 1;
\x05 while (start Long.parseLong(arr.get(searchIndex).toString())) {
\x05 start = searchIndex + 1;
\x05 } else if (Long.parseLong(arr.get(out).toString()) < Long.parseLong(arr.get(searchIndex).toString())) {
\x05 if (searchIndex == 0 || (searchIndex != 0 && Long.parseLong(arr.get(out).toString())> Long.parseLong(arr.get(searchIndex - 1).toString()))){//移动数据
\x05 Long changeTemp = Long.parseLong(arr.get(out).toString());
\x05\x05 for (int i = out; i > searchIndex; i--) {
\x05\x05 \x05arr.add(i,arr.get(i - 1));
\x05\x05 }
\x05\x05 arr.add(searchIndex,changeTemp);
\x05 break;
\x05 } else {
\x05 end = searchIndex - 1;
\x05 continue;
\x05 }
\x05 } else {//移动数据
\x05 Long changeTemp = Long.parseLong(arr.get(out).toString());
\x05 for (int i = out; i > searchIndex; i--) {
\x05 \x05arr.add(i,arr.get(i - 1));
\x05 }
\x05 arr.add(searchIndex,changeTemp);
\x05 break;
\x05 }
\x05 }
\x05 }
\x05 long dend = System.currentTimeMillis();
\x05 System.out.println("插入排序算法用时:" + (dend - dstart)+" 毫秒");
\x05
\x05 for(int i=0; i

利用随机函数产生N个随机整数(200以上),对这些数进行由小到大的排序.要求:采用堆排序. 急求VB编程“利用随机函数产生10个50-100之间的随机整数,求它们的最大值和平均值,要求用数组做”, 跪求利用随机函数产生3000000个随机整数,用堆排序方法进行排序并统计出时间的程序 vb语言中利用随机函数产生20个50~100之间的随机整数,显示他们的最大值,最小值和 利用随机函数产生16个随机整数给一个4*4的二维数组赋值.按行列输出数组 ,求最外一圈元素之和. 利用随机函数产生100个10~99之间的随机整数,找出其中的奇数和素数,并将奇数按从小到大的顺序排列vb语言. 怎样编程利用随机函数产生15个100内的随机整数存入一维数组,然后分三行输出,每行5个数如题 谢谢了 写VB代码利用随机函数产生20个50~100之间的随机整数,显示它们的最大值、最小值、和平均值 VB.编写产生随机整数过程,输出N个指定范围的随机整数.不能用内部函数!不用RND.如果不行,就不要此限制回答吧 VB:随机产生 10 个整数,求其中最小的数.若随机产生n个整数又如何实现 VB利用随机函数产生30个[3,99]整数,打印输出其中的素数(要求用数组存放) 利用随机函数产生80个10~99之间的随机整数,将其中的奇数按由小到大的顺序排列并输出利用随机函数产生80个10~99之间的随机整数,将其中的奇数按由小到大的顺序排列并输出;在产生的80个 用C语言编写程序:* 利用随机函数产生100个10~99之间(包括10和99)的随机整数存入一维数组A,编写程序:* 利用随机函数产生100个10~99之间(包括10和99)的随机整数存入一维数组A,* 然后先 vb问题利用随机函数产生80个10~99之间的随机整数,利用随机函数产生80个10~99之间的随机整数,将其中的偶数按由小到大的顺序排列并输出,将奇数按由大到小的顺序排列并输出在两个文本框 利用高级语言程序设计(VB)随机函数产生90个10~99之间的随机整数,将其中的偶数按由小到大的顺序排列…利用随机函数产生90个10~99之间的随机整数,将其中的偶数按由小到大的顺序排列, vb利用随机函数产生100个0到9之间的整数,统计一共产生了多少个0,多少个1,统计结果 利用随机函数产生N个随机整数(10000以上),对这些数进行多种方法进行排序.具体要求如下:1) 至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、选择排序、希尔排序、 通过随机函数在1~100之间产生的30个随机整数,求出平均值,并将这30个随机整数以每行5个数形式输出