アイデア:従来の考え方に:合成配列である第1の配列は、あなたが正しいを見つけるまで、二番目の配列、1つの比較、の各要素を通過、それに挿入されます。
シンプルなアイデア:セットC、B及び配列の比較の配列の先頭要素、最小値を見つけ、それが進行するために、配列Cに配置されます。
コードは以下の通りであります:
- (NSArrayの*)mergeOrderArrayWithFirstArray:(NSMutableArrayの*)secondArray配列1:(NSMutableArrayの* )array2の{ // 全为空不处理 場合(array1.count &&!array2.count){ 返します@ []。 } // 一个为空返回另外一个 場合(!array1.count){ 戻り配列2。 } もし(!array2.count){ 戻りARRAY1。 } NSMutableArrayの * endArray = [NSMutableArrayのアレイ]; 一方、(1 ){ もし [(配列1 0】するIntegerValue] <[配列2 [ 0 ]するIntegerValue]){ [endArrayのaddObject:配列1 [ 0 ]]。 [removeObjectAtIndex配列1:0 ]。 } 他 { [endArrayのaddObject:配列2 [ 0 ]]。 [removeObjectAtIndex配列2:0 ]。 } もし(!{array1.count) [endArray addObjectsFromArray:配列2]。 破ります; } もし(!{array2.count) [endArray addObjectsFromArray:配列1]。 破ります; } } リターンendArray; }