原创 【每日面試題】輸入n求和爲m的所有組合

題目:輸入兩個整數 n 和 m,從數列1,2,3.......n 中 隨意取幾個數,使其和等於 m ,要求將其中所有的可能組合列出來. 分析,由該題可知是典型的揹包問題,根據該數是否加入進行遞歸運算。 代碼: //典型揹包問題 void

原创 【每日面試題】找出數組中兩個只出現一次的數字

  題目:一個整型數組裏除了兩個數字之外,其他的數字都出現了兩次。請寫程序找出這兩個只出現一次的數字。要求時間複雜度是O(n),空間複雜度是O(1)

原创 linux學習之who命令學習

     在linux中,who用於顯示用戶相關的信息,該信息包含在結構體utmp中,包含用戶名,用戶的登錄時間等相關信息。      在編寫who命令的c語言實現中,需要注意時間的顯示格式,使用ctime獲取時間的一般格式;     

原创 nginx源碼那些事之內存管理模塊一

         nginx主要使用內存池進行內存管理,nginx中從內存池中分配內存的大小爲NGX_MAX_ALLOC_FROM_POOL,爲ngx_pagesize - 1,其中ngx_pagesize的大小在操作系統中爲4095.

原创 【每日面試題】求一個矩陣中最大的二維矩陣(元素和最大)

題目:求一個矩陣中最大的二維矩陣(元素和最大) 本代碼所採用的是最土的一次求出值,然後比較大小 //求一個矩陣中最大的二維矩陣(元素和最大). void sum1(int *a,int n,int m) {    int max=0;  

原创 【每日面試題】矩陣的螺旋輸出

         輸入一個m*n的矩陣,將其螺旋輸出,如下圖: 代碼如下: //矩陣螺旋輸出 #define max 100 int data[max][max]={0}; int Output(int m,int n,int &x,i

原创 【每日面試題】字符串倒置的遞歸算法

給定一個字符串,使用遞歸的算法將其倒置。 代碼: void reserve1(char str[],int i,int h) { char t; printf("i=%d%d\n",i,h); if(i>h)

原创 【每日面試題】通過交換a,b 中的元素,使[序列a 元素的和]與[序列b 元素的和]之間的差最小

有兩個序列a,b,大小都爲n,序列元素的值任意整數,無序; 要求:通過交換a,b 中的元素,使[序列a 元素的和]與[序列b 元素的和]之間的差最小

原创 騰訊2012實習生筆試題

一、單項選擇題1) 給定3個int類型的正整數x,y,z,對如下4組表達式判斷正確的選項()Int a1=x+y-z; int b1=x*y/z;Int a2=x-z+y; int b2=x/z*y;Int c1=x<<y>>z; in

原创 【每日面試題】字符串通配符匹配問題

題目:在一篇英文文章中查找指定的人名,人名使用二十六個英文字母(可以是大寫或小寫)、空格以及兩個通配符組成(*、?),通配符“*”表示零個或多個任意字母,通配符“?”表示一個任意字母。 如:“J* Smi??” 可以匹配“John Smi

原创 堆排序算法及其應用

        堆積排序是指利用堆積樹(堆)這種資料結構所設計的一種排序算法,可以利用數組的特點快速定位指定索引的元素。          堆可以被看成是一棵樹,結點在堆中的高度可以被定義爲從本結點到葉子結點的最長簡單下降路徑上邊的數目;

原创 nginx源碼那些事之----初認識

        最近一段時間,在面試時,聽過別人說爲啥不在空閒的時間看看開源代碼呢?作爲學生就應該多看看別人寫的代碼,然後在在別人的代碼上面寫出一些應用。聽過這些話後,感覺確實比較有感觸,所以就開始慢慢的接觸nginx方面的源碼。做完自己

原创 nginx源碼那些事之array結構分析

        對於nginx來說,包含很多結構體,array便是其中之一。        array結構體聲明如下: struct ngx_array_s { void *elts; //分配元素首地址

原创 【每日面試題】使用遞歸方法判斷數字是否是升序數組

題目:使用遞歸方法判斷數字是否是升序數組 代碼:bool IsIncrease(int *a,int n) { static int i=0; if(n==0) return false; if(n==1)

原创 【每日面試題】在字符串中刪除特定的字符

 題目:輸入兩個字符串,從第一字符串中刪除第二個字符串中所有的字符。例如,輸入”They are students.”和”aeiou”, 則刪除之後