回 帖 发 新 帖 刷新版面

主题:谁

给十个数排序除了“冒泡法”之外还有什么方法?望大侠们指教,最好能将程序告诉我 qq:395838063
“冒泡法”程序如下:
cls
for i = 1 to 10
input a(i)
next i
for m = 1 to 9
for n = 1 to 9
if a(n)<a(n+1) then
let c =a(n)
let a(n) = a(n+1)
let a(n+1) = c
end if
next n
next m
for y = 1 to 10
print a(y)
next y
end
以上程序就是将任意输入的十个数用“冒泡法”按从大到小的顺序排列。除此之外,我又找到一种方法:
for i = 1 to 10
input a(i)
next i
for m = 1 to 9
for n = m to 9
if a(m)<a(n+1) then
let c = a(m)
let a(m) =a(n+1)
let a(n+1) =c
end if
next n
next m
for u = 1 to 10
print a(u)
next u
end
请问各位大侠,除了这两种方法之外还有第三种方法吗?我冥思苦想了一个多周也没有想出来,望大侠们住小弟一臂之力。  
   
  

回复列表 (共5个回复)

沙发

http://www.programfan.com/club/showbbs.asp?id=50824

板凳

用选择排序法:
dim x(10)
for i = 1 to 10
input x(i)
next i
for j = 1 to 9
p=j
for i =j+1 to 10
if x(p)>x(i) then p=i
next i
if (p<>j) then swap x(j),x(p)
next j
for i =1 to 10
print x(i)
next i
end

3 楼

用冒泡排序法,没有楼主写的这么麻烦吧
dim a(10)         
for i = 1 to 10
input a(i)
next i
for i = 1 to 9
fir j =1 to 10-j
if a(i)>a(i+1) then swap a(i),a(i+1)
next i
next j
for i = 1 to 10
print a(i)
next i

4 楼

还有选择排序,比较排序。等
你一定要为我评分哦
[size=6]哈[/size][em7]

5 楼

建议:请在标题中具体、明确点明主题,最好不用“小菜问题”、“跪求”、“来看看呀”、“来帮帮忙呀”之类的模糊标题。

我来回复

您尚未登录,请登录后再回复。点此登录或注册