題目描述:
1、無連續相鄰的兩個空格
2、字串開頭和結尾無空格
3、新的一行開頭和結尾無空格
要得滿分,必須滿足一下兩個條件
a、不能增加新的記憶體空間
b、只能迴圈字串一次
c、不准用庫函式
參考**:這樣就可以從檔案中讀入換行符了
#include// 寫刪除字串中的空格的程式
void main()
i = fread(str,1, 10000, fp);
str[i] = '\0';
i = 0;
j = 0;
flag = 1;
while(str[j] != '\0')
}if(str[j] == '\0')
if(str[j] == '\n')//剩下的不是換行符就是其他的
else
str[i++] = str[j++];
flag = 2;
} }//end while(str[j] != '\0')
str[i] = '\0';
printf("%d\n",i);
fwrite(str,1,i,fp);
getchar();
}
面試100題系列之18鍊錶合併
碼字也不容易是不?1 給定兩個有序的鍊錶,假設都是 公升序的。需要合併兩個鍊錶,去除重複的元素,也就是求兩個鍊錶的並,這裡要求合併之後的 結果降序排列。既然有序,那問題就簡單多了。ok,輕鬆加愉快的寫出來 遍歷兩個鍊錶,如果鍊錶1的元素比鍊錶2的元素小,取鍊錶1的元素 如果大於,則取鍊錶2的元素 如...
微軟等面試100題系列 45 2
2.乙個整數陣列,長度為n,將其分為m份,使各份的和相等,求m的最大值 比如 可以分成 m 1 m 2m 3 所以m的最大值為3 package com.interview.algorithm public class leveragesum 可以分成 m 1 m 2m 3 所以m的最大值為3 pu...
從零單排之微軟面試100題系列 08之反轉鍊錶
本題目選自july大神部落格系列 微軟面試100題 july大神,該系列我主要用來記錄我的學習筆記。題目描述 使用遞迴和不遞迴兩種方法反轉鍊錶。本題亦見於 劍指offer 面試題16 遞迴方法 node reverse node phead 非遞迴方法 因在迭代過程中,鍊錶會出現斷裂,因此需要3個指...