编程语言
首页 > 编程语言> > 算法基础01排序

算法基础01排序

作者:互联网

排序

一、快排(分治)

1.确定分界点     q[l]  q[r]    q[(l+r)/2]       随机

2.调整区间:根据确定的点,假设为x,使得左边的区间<=x,右边的区间的数>=x

       比较暴力的方法:

  1.   a[ ]   b[ ]
  2.   q[l~r]  q[i]<=x放到a[ ] ,q[i]>=x 放到b[ ]
  3.   再先把a[ ]放到q[ ],然后b[ ]放到q[ ]

      优美的方法:

3.递归处理左右两段   (左右两段各自排序)

        代码

二、归并(分治)

1.确定分界点  中点

2.递归排序  左右排好序

3.合二为一

   代码

 

 

标签:01,两段,放到,算法,数组,区间,排序,指针
来源: https://www.cnblogs.com/lyhjzx/p/16404605.html