微策略筆試試題

2021-06-08 15:43:20 字數 1079 閱讀 5798

1 。奇數個整數,其中只有乙個整數重複奇數次,其他的重複偶數次。找出奇數次的整數

肯定是要求了時間複雜度了的,如果按照普通的演算法,時間複雜度為 n^2 ;

異或運算 可以用來進行資料交換:

交換兩個數字的大小

a=9;

b=10;

a=a^b;

b=b^a;

a=a^b;

結果是a為10,b為9.

採用位運算的方法,利用異或運算,兩個相同的數字異或運算為 0 ,三個相同的數字異或運算為這個數字。

異或的特性...a^a^b=b

根據這個原理可以

對這個陣列進行一次整體的異或運算,最後得到的數字即為出現奇數次的那個數字。

而且時間複雜度為 n;

int findx(int a ,int len)

;設c[97] = 1 表示字元a是存在的,如果=0則表示不存在。

下面的方法的時間複雜度為 m+n;

void findx(char *str1 ,char *str2)

;while(*p != '\0')

while(*s != '\0')

s++;}}

void main()

3 雙向鍊錶的插入,考慮表頭,表尾,以及中間的情況,

這個問題關鍵是這個雙鏈表之前應該是已經排好序了。否則怎會知道插入到什麼位置呢,暫且令煉表為公升序排列。

typedef struct doublelinknode

node;

node *create(int n)     //建立雙向鍊錶

s->next = null;

return head;

}node *insert(node *head ,int a)   //插入鍊錶

if(s == head->next)  //表頭

else if(s==null)  //表尾

else                   //表中間

return head;

}void display(node *head)  //輸出鍊錶

printf("\n");

}void main()

微策略筆試題

題目 序列123.n,n介於3和9之間,在其中加入 或者空格,使其和為0,如123456 1 2 3 4 5 6 7 等價於1 23 45 67 0。請問,如何獲得所有組合?使用遞迴和非遞迴。下面的 是別人寫的,個人認為很好就收藏了。c 序列123.n,n介於3和9之間,在其中加入 或者空格,使其和...

文思筆試試題

1.建構函式與析構函式是否可以被過載,為什麼?2.指標和引用的區別。3.malloc 和new 的區別。4.字串反轉。用兩種方法,第二種方法只用乙個數串,直接互換。5.乙個time 類,包含 minute 和sec 兩個資料成員。模擬秒錶,每次走一秒,滿 60秒進一分鐘,此時秒又從 0開始。clas...

年終將 京東,微策略筆試題

小東所在公司要發年終獎,而小東恰好獲得了最高福利,他要在公司年會上參與乙個 遊戲,遊戲在乙個6 6的棋盤上進行,上面放著36個價值不等的禮物,每個小的棋盤上面放置著乙個禮物,他需要從左上角開始遊戲,每次只能向下或者向右移動一步,到達右下角停止,一路上的格仔裡的禮物小東都能拿到,請設計乙個演算法使小東...