写快速排序可以用()方式实现。
第1题:
:A直接插入排序和希尔排序
B直接插入排序和冒泡排序
C希尔排序和快速排序
D冒泡排序和快速排序
第2题:
有一个元素数很大的无序序列,现希望从中选出最大的5各元素,下列哪种方式效率最高? ( )
A.堆排序
B.快速排序
C.基数排序
D.起泡排序
第3题:
设有1000个无序的元素,希望用最快的方式挑选出其中前10个最大元素,效率最高的排序方法是( )。
A.堆排序
B.快速排序
C.基数排序
D.起泡排序
第4题:
第5题:
我们可以用()、()、()等方式写观察日记。
第6题:
在直接插入排序、冒泡排序、简单选择排序和快速排序方法中,能在第一趟排序结束后就得到最大(或最小)元素的排序方法是()。
第7题:
下列关于排序方式叙述中错误的是()。
第8题:
简单选择排序、快速排序都是不稳定排序。
第9题:
梁的“平法”施工图上的平面注写方式,既有集中注写,也有原位注写,他们有以下特点()
第10题:
堆排序<快速排序<归并排序
堆排序<归并排序<快速排序
堆排序>归并排序>快速排序
堆排序>快速排序>归并排序E.以上答案都不对
第11题:
插入
递归
选择
都不对
第12题:
冒泡排序和快速排序
直接插入排序和简单选择排序
冒泡排序和简单选择排序
直接插入排序和快速排序
第13题:
A.快速排序在所有排序方法中最快,而且所需辅助空间最少
B.在快速排序中,不可以用队列替代栈
C.快速排序的空间复杂度为O(n))
D.快速排序在待排序的数据随机分布时效率最高
第14题:
排序都有哪几种方法?请列举。用JAVA实现一个快速
排序。
本人只研究过冒泡排序、选择排序和快速排序,下面是快速排序的代码:
public class QuickSort {
/**
* 快速排序
* @param strDate
* @param left
* @param right
*/
public void quickSort(String[] strDate,int left,int right){
String middle,tempDate;
int i,j;
i=left;
j=right;
middle=strDate[(i+j)/2];
do{
while(strDate[i].compareTo(middle)<0&& i<right)
i++; //找出左边比中间值大的数
while(strDate[j].compareTo(middle)>0&& j>left)
j--; //找出右边比中间值小的数
if(i<=j){ //将左边大的数和右边小的数进行替换
tempDate=strDate[i];
strDate[i]=strDate[j];
strDate[j]=tempDate;
i++;
j--;
}
}while(i<=j); //当两者交错时停止
if(i<right){
quickSort(strDate,i,right);//从
}
if(j>left){
quickSort(strDate,left,j);
}
}
/**
* @param args
*/
public static void main(String[] args){
String[] strVoid=new String[]{"11","66","22","0","55","22","0","32"};
QuickSort sort=new QuickSort();
sort.quickSort(strVoid,0,strVoid.length-1);
for(int i=0;i<strVoid.length;i++){
System.out.println(strVoid[i]+" ");
}
}
}
7、有数组a[n],用java 代码将数组元素顺序颠倒
package cn.itcast.lecture2;
import java.util.Arrays;
import java.util.Collections;
public class ReverseTest {
public static void main(String [] args)
{
//产生若干0到1000的随机数,作为数组的初始值
int data[] = new int[]{
(int)(Math.random() * 1000),
(int)(Math.random() * 1000),
(int)(Math.random() * 1000),
(int)(Math.random() * 1000),
(int)(Math.random() * 1000),
(int)(Math.random() * 1000),
(int)(Math.random() * 100),
};
System.out.println(Math.random());
System.out.print("交换前的数据:");
System.out.println(
Arrays.toString(data));
reverse(data);
System.out.print("交换后的数据:");
System.out.println(Arrays.toString(data));
}
//方法执行完后,参数data中的数据顺序即被颠倒
//实现思路是第1个和第n个交换,第2个和第n-1个交换,依次类推...
public static void reverse(int[] data)
{
int len = data.length;
for(int i=0;i<len/2;i++)
{
int temp = data[i];
data[i] = data[len-1-i];
data[len-1-i] = temp;
}
}
}
2.金额转换,阿拉伯数字的金额转换成中国传统的形式如:
(¥1011)->(一千零一拾一元整)输出。
public class RenMingBi {
/**
* @param args add by zxx ,Nov 29, 2008
*/
private static final char[] data = new char[]{
'零','壹','贰','叁','肆','伍','陆','柒','捌','玖'
};
private static final char[] units = new char[]{
'元','拾','佰','仟','万','拾','佰','仟','亿'
};
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(
convert(135689123));
}
public static String convert(int money)
{
StringBuffer sbf = new StringBuffer();
int unit = 0;
while(money!=0)
{
sbf.insert(0,units[unit++]);
int number = money%10;
sbf.insert(0, data[number]);
money /= 10;
}
return sbf.toString();
}
}
第15题:
栈结构不适用于下列________应用。
A.表达式求值
B.冒泡排序法的实现
C.二叉树对称序周游算法的实现
D.快速排序算法的实现
第16题:
第17题:
数据结构与算法中,快速排序的特性描述正确的是()。
第18题:
在Word使用中,可以用“自动编写摘要”功能来实现对文档的快速查阅。
第19题:
下述排序方法中,比较次数与待排序记录的初始状态无关的是()。
第20题:
快速排序是稳定排序。
第21题:
第22题:
快速排序是稳定排序
快速排序不稳定排序
快速排序的时间复杂度是O(nlog2n)
快速排序的时间复杂度是O(n*n)
第23题:
插入排序和快速排序
归并排序和快速排序
选择排序和归并排序
插入排序和归并排序