將給定陣列裡所有元素拼接成一字串,比如用「*」符號做間隔,最終效果是s*h*g*d
nsarray
*array =
@[@"s",@"h",@"g",@"d"];
//方法一:通過拼接可變字串的方法
nsmutablestring*str = [[nsmutablestring
alloc
]initwithcapacity:1
]; for (int i =0; i< array.count; i++)
else
}//方法二:通過oc陣列自帶的方法,一句**即可完成拼接
- (nsstring *)componentsjoinedbystring:(nsstring *)separator;
nsstring
*string = [arraycomponentsjoinedbystring:
@"*"];
找出乙個陣列裡面前K個最大數
問題 找出乙個陣列裡面前k個最大數。解法 1.第一感覺就是對陣列進行降序全排序,然後返回前k個元素,即是需要的k個最大數。排序演算法的選擇有很多,考慮陣列的無序性,可以考慮選擇快速排序演算法,其平均時間複雜度為o nlogn 具體 實現可以參見相關資料結構與演算法書籍。2.觀察第一種演算法,問題只需...
列印乙個陣列所有的非空子集
採用 b 位 b 掩碼實現列印給定陣列所有的非空子集。b 分析 b 首先來看乙個例子,如果給定乙個正整數n,如何輸出由1到n組成的陣列所有的非空子集呢?如n 3,那麼1到3組成的陣列為,陣列長度為3,那麼二進位制表示有 b 1 3 8 b 種。0 000 空集 1 001 2 010 3 011 4...
將乙個陣列追加到別乙個陣列
問題 將乙個陣列追加到別乙個陣列 方案 1 使用array merge 在使用這個合併陣列時如果使用數字鍵,那麼索引會重新編號.如果使用字串鍵,則會導致第二個陣列中的鍵 覆蓋第乙個陣列中的同名鍵 此時第乙個陣列中的值也就消失了 如果是兩種鍵則會表現出上述兩種特徵.r array 1 2 dd 3 4...