zoukankan      html  css  js  c++  java
  • C# 插入排序(数据结构与算法)

    1 using System;
     2
     using System.Collections.Generic;
     3
     using System.Text;
     4
     
     5 namespace BubbleSort
     6
     {
     7
         class Program
     8
         {
     9
             static void Main(string[] args)
    10
             {
    11
                 TestArray nums = new TestArray(10);
    12
                 #region  初始化数组
    13             Random rnd = new Random(100);
    14
                 for (int num = 0; num < 10; num++)
    15
                 {
    16
                     nums.Insert(rnd.Next(0,100));
    17
                 }
    18
                 #endregion
    19             Console.WriteLine("Before Sorting: ");
    20
                 nums.DisplayElements();
    21
                 Console.WriteLine("Durring Sorting: ");
    22
                 nums.InsertionSort();
    23
                 Console.WriteLine("After Sorting: ");
    24
                 nums.DisplayElements();
    25
                 Console.ReadLine();
    26
             }
    27
         }
    28
     }
    29
     public class TestArray
    30
     {
    31
         private int[] arr;
    32
         private int upper;
    33
         private int numElements;
    34
         public TestArray(int size)
    35
         {
    36
             arr = new int[size];
    37
             upper = size - 1;
    38
             numElements = 0;
    39
         }
    40
         public void Insert(int item)
    41
         {
    42
             arr[numElements] = item;
    43
             numElements++;
    44
         }
    45
         public void DisplayElements()
    46
         {
    47
             for (int num = 0; num <= upper; num++)
    48
             {
    49
                 Console.Write(arr[num]+" ");
    50
             }
    51
             Console.WriteLine();
    52
         }
    53
         public void Clear()
    54
         {
    55
             for (int num = 0; num <= upper; num++)
    56
             {
    57
                 arr[num] = 0;
    58
             }
    59
             numElements = 0;
    60
         }
    61
         //插入排序算法
    62     public void InsertionSort()
    63
         {
    64
             int inner, temp;
    65
             for(int outer=1;outer<=upper;outer++)
    66
             {
    67
                 inner=outer;
    68
                 temp=arr[outer];
    69
                 while(inner>0 && arr[inner-1]>=temp)
    70
                 {
    71
                     arr[inner]=arr[inner-1];
    72
                     inner-=1;
    73
                 }
    74
                 arr[inner]=temp;
    75
                 this.DisplayElements();
    76
             }
    77
         }
    78
     }

  • 相关阅读:
    今天是全面开发的第一天,特此纪念
    Linux 进程管理 (ZZ)
    骑车上班
    VSFTPD配置小结(一)
    Flash Builder 4 在Chrome的调试
    测试一下Windows Live Writer
    转:C++强大的背后
    转:Flex中的Image屬性 (width, contentWidth, content.width)的差異
    Flash Builder 4 安装提示“安装程序检测到计算机重新启动操作可能处于挂起状态“的解决
    使用简单工厂和State模式替换冗余的 switchcase 语句
  • 原文地址:https://www.cnblogs.com/wwwzzg168/p/3570104.html
Copyright © 2011-2022 走看看