zoukankan      html  css  js  c++  java
  • 快速排序

    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        NSMutableArray *arr = @[@"9", @"8", @"2", @"6", @"1"].mutableCopy;
     [self QuickSort:arr StartIndex:0 EndIndex:4];
        NSLog(@"%@", arr);
    }
    
    -(void)QuickSort:(NSMutableArray *)list StartIndex:(NSInteger)startIndex EndIndex:(NSInteger)endIndex{
        
        if(startIndex >= endIndex)return;
        
        NSNumber * temp = [list objectAtIndex:startIndex];
        NSInteger tempIndex = startIndex; //临时索引 处理交换位置(即下一个交换的对象的位置)
        
        for(int i = (int)startIndex + 1 ; i <= endIndex ; i++){
            
            NSNumber *t = [list objectAtIndex:i];
            
            if([temp intValue] > [t intValue]){
                
                tempIndex = tempIndex + 1;
                
                [list exchangeObjectAtIndex:tempIndex withObjectAtIndex:i];
                
            }
            
        }
        
        [list exchangeObjectAtIndex:tempIndex withObjectAtIndex:startIndex];
        [self QuickSort:list StartIndex:startIndex EndIndex:tempIndex-1];
        [self QuickSort:list StartIndex:tempIndex+1 EndIndex:endIndex];
       
    }
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    
    @end

    打印结果

    2016-12-22 17:56:14.546 text[31326:1735436] (
        1,
        2,
        6,
        8,
        9
    )

  • 相关阅读:
    Android事件分发
    Android 内存泄露
    Android IPC介绍
    Android垃圾回收机制
    (C#)为应用程式设定运行权限(System.Security类下的GenericIdentity,GenericPrincipal,PrincipalPermission)
    http请求
    VS 的链接库的设置
    在VS中添加lib库的三种方法
    二分法查找数组
    Remove Duplicates from Sorted Array II
  • 原文地址:https://www.cnblogs.com/menglingxu/p/6212353.html
Copyright © 2011-2022 走看看