0C中如何產生多個隨機互不相同的數.

清華大佬耗費三個月吐血整理的幾百G的資源,免費分享!....>>>

-(NSArray *)randomArray

{

    //隨機數從這里邊產生

    NSMutableArray *startArray=[NSMutableArray array];

    for (int i = 1; i<34; i++) {

        [startArray addObject:@(i)];

    }

    //隨機數產生結果

    NSMutableArray *resultArray=[[NSMutableArray alloc] initWithCapacity:0];

    //隨機數個數

    NSInteger m=6;

    for (int i=0; i<m; i++) {

        int t=arc4random()%startArray.count;

        resultArray[i]=startArray[t];

        startArray[t]=[startArray lastObject]; //為更好的亂序,故交換下位置

        [startArray removeLastObject];

    }

    return resultArray;

}

//題目為產生6個 1-33的數.實現思路為   將得到的數從容器數組中以下角標的形式去除.