标题: 自创排序法 [打印本页]

作者: liuda    时间: 2015-1-20 01:37
标题: 自创排序法
觉得有缺点点请告诉我

C语言代码:
        char  s[30],sd[11],i,j;若为了减少变量在RAM中占的空间在char后加xdata即可,但程序代码段会增加字节
        char code a[]={17,2,6,12,23,2,3,4,21,9,5};//code是为了代码空间占用少,不加会多次2百左右字节,所以上面加了个存放数组
        for(i=0;i<sizeof(a);i++)
        {
                s[a]++;
        }
        //循环数组
        for(i=0;i<sizeof(s);i++)
        {
                //将排好的数覆盖到原数组,当有重复的下标加1,数组对应的值减1
                while(s)               
                {
                        sd[j]=i;
                        j++;
                        s--;
                }
        }
    Program Size: data=51.0 xdata=0 code=84
    代码执行总时间为393us。
    若char xdata s[30],sd[11],i,j;
    Program Size: data=9.0 xdata=43 code=169

C#代码:
             string value="";
             int[] s = new int[30];            
            int i, j = 0;
            int[] a = { 17, 2, 6, 12, 23, 2, 3, 4, 21, 9, 5 };
            for (i = 0; i < 11; i++)
            {
                s[a]++;
            }
            //循环数组
            for (i = 0; i < 30; i++)
            {
                //将排好的数覆盖到原数组,当有重复的下标加1,数组对应的值减1
                while (s > 0)
                {
                    a[j] = i;//将原数组变为排序后的内容
                    s+=i.ToString()+"  " ;
                    j++;
                    s--;
                }
            }
            MessageBox.Show(value) ;








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1