面試及總結2

2021-08-25 06:57:01 字數 1474 閱讀 1659

今天上完課回實驗室後,把昨天面試的三道演算法題,完完整整的全部自己重做實現了一遍(多種方法)

以下**原則上,力爭全部都是用c語言實現,但考慮到擴充套件性和相容性,演算法1使用了模板

測試環境:vs2008

測試結果:測試通過

/**************************************/

/***** 時 間:2010.6.28 ****/

/**************************************/

#include "stdafx.h"

#include #include #include #include #include /**************************************/

/***** 面試題1:兩陣列歸併排序 ****/

/**************************************/

templatevoid printarray(t *array, int len)

else if(0==flag1 && 1==flag2) /* 降-公升: 陣列array1降序,陣列array2公升序,則陣列array3仍為降序 */

while(i=0)

array3[k++]=array2[j--];

}

else if(0==flag1 && 0==flag2) /* 降-降: 陣列array1降序,陣列array2降序,則陣列array3仍為降序 */

while(i=len && flag) /* 如果全部匹配成功,則i>=len 返回檔名 */

ch=fgetc(pf);

}

fclose(pf);

pf=null;

return null;

}

/* 遍歷資料夾下的所有*.txt格式檔案 */

void search_txtfiles(const char *dirpath, const char *word)

else

_findclose( hfile );

}

printf("\n");

}

/* 顯示目錄資料夾下(相對路徑)所有包含單詞word的檔名(*.txt) */

void display_filename()

/* 主函式,實現面試三道c語言演算法題 */

int _tmain(int argc, _tchar* argv)

執行結果:

實際result檔案記錄的包含baidu的檔案目錄(手工判斷找出的,用以與程式結果對照)

面試及總結

第一道很簡單,問程式在記憶體有幾個資料區,堆和棧區有啥區別 第二道是兩個有序陣列 可能公升序或降序 要求合併到乙個大陣列中,使其仍然有序,講了大體思路,並用c簡單寫了實現 第三道是給出int型的x y兩個數,要求不借助第三個變數交換x和y的值,啊。從大一開始學c,碰到過用value傳參 引用傳參 指...

面試及總結

第一道很簡單,問程式在記憶體有幾個資料區,堆和棧區有啥區別 第二道是兩個有序陣列 可能公升序或降序 要求合併到乙個大陣列中,使其仍然有序,講了大體思路,並用c簡單寫了實現 第三道是給出int型的x y兩個數,要求不借助第三個變數交換x和y的值,啊。從大一開始學c,碰到過用value傳參 引用傳參 指...

面試及總結

第一道很簡單,問程式在記憶體有幾個資料區,堆和棧區有啥區別 第二道是兩個有序陣列 可能公升序或降序 要求合併到乙個大陣列中,使其仍然有序,講了大體思路,並用c簡單寫了實現 第三道是給出int型的x y兩個數,要求不借助第三個變數交換x和y的值,啊。從大一開始學c,碰到過用value傳參 引用傳參 指...