Swift 快速排序

前端之家收集整理的这篇文章主要介绍了Swift 快速排序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

用Swift做的一个快速排序算法(递归法)

func QuickSort(index: NSMutableArray,left: Int,right: Int) {
        if left >= right {
            return
        }
        
        var i = left
        var j = right
        let key = index[left] as! Int
        
        while(i<j) {
            while(i < j && key >= index[j] as! Int) {
                j = j - 1
            }
            index.replaceObjectAtIndex(i,withObject: index[j])
            while(i < j && key <= index[i] as! Int) {
                i = i + 1
            }
            index.replaceObjectAtIndex(j,withObject: index[i])
        }
        
        index.replaceObjectAtIndex(i,withObject: key)
        QuickSort(index,left: left,right: i - 1)
        QuickSort(index,left: i + 1,right: right)
}

猜你在找的Swift相关文章