2013年6月12日 星期三

C# bubble sort(簡單的泡沫排序法)


        public Form1()
        {
            InitializeComponent();
            arr = new int[]{ 26, 4, 20, 7, 63 }; //這邊都先寫死

            this.label1.Text = "";
            this.label2.Text = "";
            for (int i = 0; i < arr.Length; i++)
            {
                this.label1.Text += arr[i].ToString() +" , ";
            }
        }
        int[] arr;

        private void button1_Click(object sender, EventArgs e)
        {
            //這是一個bubble sort探討的例子
            //從簡單的開始,試著把最大的往右邊移動

            //寫在外圈的for,是代表說,至少要跑五次的意思
            for (int j = 0; j < arr.Length; j++)
            {
                //寫在裡面的for,告訴我們,每一圈都會把最大的丟到最右邊
                for (int i = 0; i < arr.Length - 1; i++)
                {
                    if (arr[i] > arr[i + 1])
                    {
                        int temp = arr[i];
                        arr[i] = arr[i + 1];
                        arr[i + 1] = temp;
                    }
                }
            }
            for (int i = 0; i < arr.Length; i++)
            {
                this.label2.Text += arr[i].ToString() + " , ";
            }
            this.label2.Text += "\n";
        }

2013年6月8日 星期六

c# 反向排序字串的方法 ( 不使用Array.Sort )


   private void button1_Click(object sender, EventArgs e)
        {
            string input = this.textBox1.Text;
            string output = "";
            string[] lala= new string[input.Length];
            for (int i = 0; i < input.Length; i++)
            {
                lala[input.Length-i-1]=input.Substring(i,1);
            }
            for (int j = 0; j < input.Length; j++)
            {
                output += lala[j].ToString();
            }
            this.textBox2.Text = output;
        }