using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { //int num = 0; staticvoid Main(string[] args) { Stack<string> aa =new Stack<string>(); aa.Push("111"); aa.Push("222"); aa.Push("333"); //int num = aa.Count; for (int i =0; i < aa.Count; i++) { string bb = aa.Pop(); Console.WriteLine(bb); } Console.Read(); } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { //int num = 0; staticvoid Main(string[] args) { int[] ss =newint[] { 12,3,67,22,89,102,2,54}; Console.WriteLine("原始數據如下:"); for (int k =0; k < ss.Length; k++) { Console.Write(ss[k] +""); } Console.WriteLine(""); sort(ss, 0, 7,0); Console.Read(); } publicstaticvoid sort(int[] array, int left, int right,int num) { int i, j; int middle, t; i = left; j = right; middle = array[(left + right) /2]; do { //從左側找大于中間值的數 while ((array[i] < middle) && (i < right)) { i++; } //從右側找小于中間值的數 while ((array[j] > middle) && (j > left)) { j--; } //找到了一對就交換 if (i <= j) { t = array[i]; array[i] = array[j]; array[j] = t; i++; j--; num = num +1; Console.WriteLine("第{0}次排序的結果", num); for (int k =0; k < array.Length; k++) { Console.Write(array[k] +""); } Console.WriteLine(""); } }while (i <= j); if (left < j) { sort(array, left, j,num); } if (right> i) { sort(array, i, right,num); } } } }
posted on 2008-04-29 16:18 北極雪 閱讀(257) 評論(0)編輯收藏 所屬分類: c#