通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
资源搜索:
热门搜索:Linux VB C语言 PhotoShop Flash TCP/IP
   首页 | 文章 | 软件 | 动画 | 资源 | 励志 | 骗术 | 论坛 | 邮箱 | 会员中心 | 军事 | 科技 | 博客 | 图片 | 商城 | 最新更新 | 800g资源 | 爱心黑客
您现在的位置: 爱国者黑客 >> 资源 >> 安全技术 >> 软件破解 >> 算法研究 >> 文章正文
排序算法
责任编辑:admin   更新日期:2005-8-6
计算机处理数据包括排序、检索(查找)、修改和删除操作。我们研究排序算法有几点充分理由。首先,是因为它实际应用非常频繁,计算机厂家…… //这个你要听吗? 不废话了。

//为了说明方便.定义如下数组:  a:array[1..10] of integer;temp: 中间变量  排序:  从大到小

l         选择排序
 1.基本的 选择排序
  <1>基本思想

        首先从要排序的数中选择最大的数,将它放在第一个位置,然后从剩下的数中选择最大的数放在第二个位置,如此继续,直到最后从剩下的两个数中选择最大的数放在倒数第二个位置,剩下的一个数放在最后位置,完成排序.

        下表是六个元素的排序的过程

 

        
      4    5   7   1   2   3

         ┗━━┛

          5    4   7   1   2   3
     ┗━━━━┛

          7    4   5   1   2   3
     ┗━━━━━━┛

          7    4   5   1   2   3   

         ┗━━━━━━━━━━┛    第一趟结束
      ⑦   4   5   1   2   3

              ┗━┛
      7    5   4   1   2   3

              ┗━━━┛
      7    5   4   1   2   3
          ┗━━━━━┛
      7    5   4   1   2   3
          ┗━━━━━━━┛     第二趟结束
      7    ⑤  4   1   2   3
              ┗━┛

          7    5   4   1   2   3
              ┗━━━┛

          7    5   4   1   2   3

                   ┗━━━━━┛    第三趟结束

          7    5   ④  1   2   3

                      ┗━┛
      7    5   4   2   1   3     第四趟结束
                  ┗━━━┛    
      7    5   4   ③  1   2
                      ┗━┛     第五趟结束

          7    5   4   3   ②  ①  

                  
  <2>算法实现

           for i:=1 to 9 do

             for j:=i+1 to 10 do

               if a[i]<a[j]
            begin

                  temp:=a[i];

                  a[i]:=a[j];

                  a[j]:=temp;

                end;    

    2.改进 

         以上排序方案每次交换两个元素需要执行三个语句,过多的交换必定要花费许多时间.改进方案是在内循环的比较中找出最大值元素的下标,在内循环结束时才考虑是否要调换.

         代码如下

              for i:=1 to 9 do

                begin

[1] [2] [3] [4] [5] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 热门文章
    Olldbg常见问题
    汇编语言的艺术(组合语言的艺术)--观
    汇编语言的艺术(组合语言的艺术)--准
    汇编语言的艺术(组合语言的艺术)--基
    汇编语言的艺术(组合语言的艺术)--基
    汇编语言---程式设计 (4)
    虚拟8086模式
    SYS命令使用说明
    javascript + CSS 实现动态菜单显
    推荐文章
    自制Windows XP SP2自动安装光盘
    SQLServer注入工具改进版 v1.02
    使用photoshop CS进行自然美肤
    Photoshop绘制诺基亚手机
    PHOTOSHOP制作秋日之梦
    PHOTOSHOP鼠绘名模王爱萍
    Photoshop制作晶莹飞溅的水珠
    教你用PHOTOSHOP做放大镜
    鼠绘美女及服装修画全过程