| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1844 人关注过本帖
标题:C#实现的基本算法 changqi [原作]
只看楼主 加入收藏
shan0yu
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2004-6-12
收藏
 问题点数:0 回复次数:7 
C#实现的基本算法 changqi [原作]

using System;

namespace BubbleSorter { public class BubbleSorter { public void Sort(int [] list) { int i,j,temp; bool done=false; j=1; while((j<list.Length)&&(!done)) { done=true; for(i=0;i<list.Length-j;i++) { If(list[i]>list[i+1]) { done=false; temp=list[i]; list[i]=list[i+1]; list[i+1]=temp; } } j++; }

}

}

public class MainClass { public static void Main() { int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47}; BubbleSorter sh=new BubbleSorter(); sh.Sort(iArrary); for(int m=0;m<iArrary.Length;m++) Console.Write("{0} ",iArrary[m]); Console.WriteLine(); } }

}

  选择排序   本人用了C#开发出选择排序算法。希望能为C#语言的学习者带来一些益处。不要忘了,学语言要花大力气学数据结构和算法。

using System;

namespace SelectionSorter { public class SelectionSorter { private int min; public void Sort(int [] list) { for(int i=0;i<list.Length-1;i++) { min=i; for(int j=i+1;j<list.Length;j++) { if(list[j]<list[min]) min=j; } int t=list[min]; list[min]=list[i]; list[i]=t; }

} } public class MainClass { public static void Main() { int[] iArrary=new int[]{1,5,3,6,10,55,9,2,87,12,34,75,33,47}; SelectionSorter ss=new SelectionSorter(); ss.Sort(iArrary); for(int m=0;m<iArrary.Length;m++) Console.Write("{0} ",iArrary[m]); Console.WriteLine();

} } }

  插入排序

  插入排序算法。对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。

using System;

namespace InsertionSorter { public class InsertionSorter { public void Sort(int [] list) { for(int i=1;i<list.Length;i++) { int t=list[i]; int j=i; while((j>0)&&(list[j-1]>t)) { list[j]=list[j-1]; --j; } list[j]=t; }

} } public class MainClass { public static void Main() { int[] iArrary=new int[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47}; InsertionSorter ii=new InsertionSorter(); ii.Sort(iArrary); for(int m=0;m<iArrary.Length;m++) Console.Write("{0}",iArrary[m]); Console.WriteLine(); } } }

  希尔排序

  希尔排序是将组分段,进行插入排序. 对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。

using System;

namespace ShellSorter { public class ShellSorter { public void Sort(int [] list) { int inc; for(inc=1;inc<=list.Length/9;inc=3*inc+1); for(;inc>0;inc/=3) { for(int i=inc+1;i<=list.Length;i+=inc) { int t=list[i-1]; int j=i; while((j>inc)&&(list[j-inc-1]>t)) { list[j-1]=list[j-inc-1]; j-=inc; } list[j-1]=t; } } } } public class MainClass { public static void Main() { int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47}; ShellSorter sh=new ShellSorter(); sh.Sort(iArrary); for(int m=0;m<iArrary.Length;m++) Console.Write("{0} ",iArrary[m]); Console.WriteLine(); } } }

我现在才发现有些东西是永恒不变的,比如算法.

这个用C#实现的基本算法很不错,就是没有缩进,我排版了好久都没排好,郁闷ing

现在只好暂时这样了.应该还能看得清楚.

搜索更多相关主题的帖子: 原作 changqi 算法 
2004-07-19 09:12
ASP点儿NET
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2004-9-26
收藏
得分:0 

原来学语言这么难的


刚接触电脑,想学编程,学哪样呢?就.NET了... ...
2004-09-27 08:31
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
当然不会缩进,什么都要嵌套在类里,括号满屏飞。
2004-10-06 01:55
何凡心
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2004-11-5
收藏
得分:0 

写得不错啊 呵呵 谢谢这位仁兄啊

2004-11-05 14:58
浪漫情人
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-11-14
收藏
得分:0 

和C 差不多啊!!!

其实一样

2004-11-14 20:32
baggio5
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2004-11-10
收藏
得分:0 
支持
2004-11-15 11:21
傻强
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-11-15
收藏
得分:0 
刚学C#,慢慢看罗!谢谢楼主.
2004-11-15 14:32
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
一看此程序就不是直接从vs编辑器上面copy下来的,你应该利用c#编辑器排版好之后再贴上来就好了。这样不排版的话,阅读性很差!

♂ 死后定当长眠,生前何须久睡。♀
2010-02-24 20:11
快速回复:C#实现的基本算法 changqi [原作]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035354 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved