zoukankan      html  css  js  c++  java
  • object 版归并排序

    -(void)main:(NSMutableArray*)srcArray{
        NSMutableArray* tempArray=[[NSMutableArray alloc] init];
        [self main:srcArray tempArray:tempArray left:0 right:(int)([srcArray count]-1)];
    }
    
    -(void)main:(NSMutableArray*)srcArray tempArray:(NSMutableArray*)tempArray left:(int)left right:(int)right{
        if (left<right) {
            int middle=(left+right)/2;
            [self main:srcArray tempArray:tempArray left:left right:middle];
            [self main:srcArray tempArray:tempArray left:middle+1 right:right];
            [self merger:tempArray srcArray:srcArray leftStart:left leftEnd:middle rightStart:middle+1 rightEnd:right];
        }
    }
    
    -(void)merger:(NSMutableArray*) tempArray srcArray:(NSMutableArray*)srcArray leftStart:(int)leftStart leftEnd:(int)leftEnd rightStart:(int)rightStart rightEnd:(int)rightEnd{
        int index=leftStart;
        int srcLeftStart=leftStart;
        while (leftStart<=leftEnd&&rightStart<=rightEnd) {
            if ([srcArray[leftStart] intValue]<[srcArray[rightStart] intValue]) {
                tempArray[index++]=srcArray[leftStart++];
            }else{
                tempArray[index++]=srcArray[rightStart++];
            }
        }
        
        while (leftStart<=leftEnd) {
            tempArray[index++]=srcArray[leftStart++];
        }
        
        while (rightStart<=rightEnd) {
            tempArray[index++]=srcArray[rightStart++];
        }
        
        for (int i=srcLeftStart; i<=rightEnd; i++) {
            srcArray[i]=tempArray[i];
        }
    }
  • 相关阅读:
    图像的加载与保存
    numpy初学
    深入精通JavaScript插件
    Python图像处理库:Pillow 初级教程
    PIL包的应用
    UIWebView的离线缓存
    UITableView优化技巧
    UIKit Dynamics入门
    CALayer 一些重要属性
    一个Demo展示Storyboard的强大
  • 原文地址:https://www.cnblogs.com/learnWindowsPhone/p/3670662.html
Copyright © 2011-2022 走看看