程式設計之美 找出故障機器

2021-07-09 09:17:55 字數 594 閱讀 7729

給出乙個數字的列表,是否能夠快速的找出其中只出現一次的數字。

想法:定義乙個動態的陣列,讀乙個數字,如果這個數字沒出現在動態陣列中,則將它放在陣列中,如果陣列中已經有了,則刪除。 最後剩下的就是只出現了一次的資料。

#include 

#include

using

namespace

std;

void check(int value, vector

&list)

}list.push_back(value);

}int execute(int* pdata, int nlen)

nret = list.size();

for (vector

::iterator it = list.begin(); it != list.end(); it++)

cout

<< endl;

return nret;

}void main()

; execute(test, 30);

cin >> i;

}

程式設計之美之找出故障機器

問題 假設乙個機器僅僅儲存乙個標號為id 的記錄 id小於 10億的整數 每個資料儲存 2個備份,這樣就有 2個機器儲存了同樣的資料。提問1 某時間如果得到乙個資料檔案id 的列表,是否能夠快速地找出這個表中僅僅出現一次的 id?提問2 如果已經知道只有一台機器宕機 即只有乙個備份丟失 呢?如果有2...

程式設計之美 1 5 快速找出故障機器

解法3 使用異或 問題1 找出出現奇數次的兩個數 void findrepeatedtwonumbers int a,int n,int no1,int no2 temp的值現為兩個出現奇數次的數的異或 找第乙個為1的位 for j 0 j sizeof int 8 j 第j位為1,說明這兩個數字在...

程式設計之美 1 5 快速找出故障機器

題目 假設乙個機器只儲存乙個標號為id的記錄,假設每份資料儲存2個備份,這樣就有2個機器儲存了相同的資料。其中id是小於10億的整數 問題1 在某個時間,如果得到乙個資料檔案id的列表。是否能夠快速的找到這個表中僅出現一次的id?即快速找出出現故障的機器儲存的資料id。問題2 如果有兩台機器宕機呢?...