分别用选择排序法和冒泡排序法实现有N个元素数组的排序。N由键盘输入,数组元素的值在1~200之间,随机产生
Private Sub Form_Click()
Dim a(), i%, imain%, j%, t%
n = Val(InputBox(""))
ReDim a(n - 1)
For i = 0 To n - 1
a(i) = Int(Rnd * 201 + 1)
Next
For i = 0 To n - 2 '下标 -1 个
For j = 0 To n - 2 - i '下标 -1-i 个
If a(j) > a(j + 1) Then
t = a(j): a(j) = a(j + 1): a(j + 1) = t
End If
Next j
Next i
For i = 0 To n - 1
Print a(i)
Next
End Sub
用什么语言好歹说一下吧!
#include<iostream.h>#include<iomanip.h>
void main()
{
int a[10];
int i,j,temp;
cout<<"请输入10个数:"<<endl;
for(i=0;i<10;i++)
cin>>a[i];
cout<<"这十个数为:"<<endl;
for(i=0;i<10;i++)
cout<<setw(4)<<a[i]<<endl;
for(i=0;i<9;i++)
{
for(j=0;j=9-i;j++)
{
if(a[j]>a[j+1]) {temp=a[j];a[j]=a[j+1];a[j+1]=temp;}
}
}
cout<<"这十个数由大到小排序输出结果为:"<<endl;
for(i=0;i<10;i++)
cout<<setw(4)<<a[i]<<endl;
}
private sub form-click(0
dim a%(),i% ,m%,n5
n=inputbox("qingshuru")
redim a(n)
for i=0 to n-1
a(n)=int(rnd*200+1)
print a(n)
next i
随机产生10个介于0到100之间的整数,分别使用选择法和冒泡法对其进行升序...
选择法:Private Sub Form_Click()Dim i%, j%, a%(1 To 10)Randomize For i = 1 To 10 a(i) = Int(101 * Rnd)Next i For i = 1 To 9 k = i For j = i + 1 To 10 If a(j) < a(k) Then k = j Next j If k <> i Then t = a(i): a(i) = a(k): a...
冒泡排序和交换排序的区别
以JAVA为例,冒泡排序和交换排序的区别是选择排序,每次都要遍历全部元素,选择其中最小的(或最大的)放到第一位;而冒泡排序比较相邻的两个数,大的(或者小的)放后面,由于冒泡是一边比较一边调整顺序,所以数列会越来越接近排序完成状态。Java是由Sun公司于1995年5月推出的面向对象的程序设计语言。J...
C语言题:输入十个数用一维数组分别用冒泡法与选择排序法进行排序
逆序反之) *\/temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}}\/* 选择排序 *\/\/* 1. 将初始数组分为两段,前段为已排序数组,后段为未排序数组 *\/\/* 2. 在未排序数组中寻找最值元素,将其然后放到已排序数组的末尾 *\/\/* 3. 对所有元素均重复以上步骤,直至最后一个元素...
简述各种排序算法的优缺点
1、冒泡排序法:优点是数据稳定误差小。缺点是速度慢。2、选择排序法:优点是移动数据的次数少。缺点是比较数据的次数多。3、插入排序法:优点是数据稳定且速度快。缺点是比较次数浮动较大。4、缩小增量排序法:优点是速度快且数据可以按一定顺序排列。缺点是数据不稳定。
排序法有哪几种
1、冒泡排序,冒泡排序是一个比较简单的排序方法。在待排序的数列基本有序的情况下排序速度较快。2、选择排序,选择法的原理是先将一个数与后面的每一个数依次比较,不断将将小的赋给一个数,从而找出较小的,然后第二个数与后面的每一个数依次比较,从而找出 第二小的,然后第三个数与后面的。...
五种常见的排序方法
归并排序的时间复杂度为 O(nlogn), 空间复杂度为 O(n)。 总结 在实际的应用中,选择合适的排序算法非常重要,不同的排序算 法有不同的优劣势。冒泡排序、选择排序和插入排序是三种简单的排 序算法,它们的时间复杂度都为 O(n^2),在处理小规模的数据时比 较适用。快速排序和归并排序是两种高效...
...排序和冒泡排序区别怎么用Linux代码说明冒号算法和直接选择法...
在 Linux 中,可以使用两种不同的算法来对数组进行排序: 直接排序法和冒泡排序法。直接排序法(selection sort)是一种简单的排序算法,它的基本思想是:首先在未排序的数列中找到最小元素,然后将其存放到数列的起始位置;接着,再从剩余未排序的元素中继续寻找最小元素,然后放到已排序序列的末尾。以此...
常见的排序算法—选择,冒泡,插入,快速,归并
冒泡排序是一种比较基础的排序算法,其思想是相邻的元素两两比较,较大的元素放后面,较小的元素放前面,这样一次循环下来,最大元素就会归位,若数组中元素个数为n,则经过(n-1)次后,所有元素就依次从小到大排好序了。整个过程如同气泡冒起,因此被称作冒泡排序。 选择排序代码如下: public void Bubble_sort(int[] ...
数组排序有什么好方法
数组排序有冒泡排序法、选择排序法、插入排序法和快速排序法。1、冒泡排序法。冒泡排序是一个比较简单的排序方法。在待排序的数列基本有序的情况下排序速度较快。2、选择排序法。选择法的原理是先将第一个数与后面的每一个数依次比较,不断将将小的赋给第一个数,从而找出最小的值。3、插入排序法...
高分咨询:问用冒泡法和选择法分别实现对数组的排序,请举出些实例_百度...
直接选择排序的平均时间复杂度为O(n2)。(3)直接选择排序是一个就地排序 (4)稳定性分析 直接选择排序是不稳定的 选择排序是不稳定排序,而冒泡排序是稳定排序;选择排序是先在所有的未排序记录中找到一个最小(或最大的)放在最前面或者最后面;而冒跑排序则是相邻的两个记录逐个比较,不满足排序...
赧胖吡诺: #include#include void main() {int a[10]; int i,j,temp; cout for(i=0;i cin>>a[i]; cout for(i=0;i cout for(i=0;i { for(j=0;j=9-i;j++) { if(a[j]>a[j+1]) {temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } } cout for(i=0;i cout}
三山区18995294570: 分别用选择法、冒泡法编写一个排序的函数void mysort(int *p,int n). - ?
赧胖吡诺: void mysort(int *p,int n) //冒泡排序法{int t;for(int i=0;i<n-i-1;j++) if...
三山区18995294570: C语言分别用选择法和冒泡法将N个数按从大到小顺序排列 - ?
赧胖吡诺: int a[100],i,j,k,temp;选择法: for(i=0;i<N;i++) { k=i; for(j=k+1;j<N;j++) if(a[k]<a[j]) k=j; temp=a[i];a[i]=a[k];a[k]=temp; }冒泡法: for(i=0;i<N;i++) for(j=0;j<N-i;j++) if(a[j]>a[j+1]) { temp=a[j];a[j]=a[j+1];a[j+1]=temp; }
三山区18995294570: 高分咨询:问用冒泡法和选择法分别实现对数组的排序,请举出些实例 - ?
赧胖吡诺: 冒泡排序1、排序方法将被排序的记录数组R[1..n]垂直排列,每个记录R[i]看作是重量为R[i].key的气泡.根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上"飘浮".如此反复进行,直到最...
三山区18995294570: 分别用选择法、冒泡法编写一个排序的函数void mysort(int *p,int n). - ?
赧胖吡诺: void mysort(int *p,int n) //冒泡排序法 { int t; for(int i=0;i<n-1;i++) for(int j=0;j<n-i-1;j++) if(p[j]>p[j+1]) //大值往后移 { t=p[j]; p[j]=p[j+1]; p[j+1]=t; } } void mysort(int *p,int n) //选择排序法 { int t; for(int i=0;i<n-1;i++) { int k=i; for(int j=i+1;j<n;j++) if(p[j]<p[k]) //小...
三山区18995294570: 用c语言编写:输入20个整数,分别用选择法和冒泡法实现降序排列后,再按照每行5个数的规律输出 - ?
赧胖吡诺: /////冒泡法#include <stdio.h> void main () { int i,a[100],n,j,k=1,t; printf ("输入个数n: ");//你要的是20,就输入10吧 scanf ("%d",&n); printf ("输入%d个数据:\n",n); for (i=0;i<n;i++) { printf ("a[%d]= ",i); scanf ("%d",&a[i]); } for (i=1...
三山区18995294570: 分别用起泡法和选择法实现对10个数排序(由大到小).(请用C编写) - ?
赧胖吡诺: 为了减少输入,这里使用了随机生成数,想要自己输入可以按照注释的部分自行调整个别语句即可. 1、冒泡排序程序如下,仅供参考: # include "stdio.h" # include "time.h" # include "stdlib.h" # define N 400 void init(int a[],int n){//生成待...
三山区18995294570: VB随机产生10个两位数整数(正整数),要求分别用选择排序法和冒泡排序法将这10个数降序排列输出在窗体上 - ?
赧胖吡诺: Option Base 1 Dim a(20) Private Sub Form_Load() Randomize For i = 1 To 10 a(i) = Int(10 + 90 * Rnd) Next End SubPrivate Sub Command1_Click() '选择排序法For i = 1 To 9 For j = i + 1 To 10 If a(j) > a(i) Then t = a(i): a(i) = a(j): a(j) = t Next j ...
三山区18995294570: 要求写二个函数,分别用选择法和冒泡法对数据按由大到小的顺序排序,在主函数中输入 - ?
赧胖吡诺: #include <iostream> #include <ctime>#define N 10 //预定义数组长度,可调整 using namespace std;void Swap(int &a, int&b)//对a,b两数进行交换 {int c=a;a=b;b=c; }void BubbleSort(int a[], int n)//对数组a[]进行冒泡排序 //数组元素个数为n {...
三山区18995294570: C语言求解 输入十个学生姓名,分别用冒泡排序法和选择排序法对10个学生的姓名按升排序输出 - ?
赧胖吡诺: #include<stdio.h>#include<string.h> char stu[10][20]; void Bubble(void) { int i, j; for(i = 0; i < 10; i++) { for(j = 0; j + i < 9; j++) { if(strcmp(stu[j], stu[j + 1]) > 0) { char temp[20]; strcpy(temp, stu[j]); strcpy(stu[j], stu[j + 1]); strcpy(stu[j + 1], temp); } } } for(i = 0; ...