將檔案內容按行隨機排列

2022-08-18 12:03:09 字數 424 閱讀 8106

在實際工作上有種需求, 就是需要從給定的資料裡,隨機抽取一部分。

有一種簡單的方法是根據總的資料條數和要抽取的資料條數, 通過簡單方法,隔幾行取乙個,這樣也能達到隨機抽取一部分的目的。

但這樣,源資料是順序的,則抽取的資料也是順序的,不滿足一些情境。

這裡實現的功能是:將全部資料,按行重新隨機排列, 這樣從結果頭部選幾行,就是隨機抽取的幾行了,比較方便。

實現的思路:對於n行的資料, 給每一行用[1-n]之間不重複的數做標記, 最後按標記數排列即可。(不重複上要稍微費點兒心思)

實現思路比較重要,實現就簡單了~

實現上用c結合shell的方式,下面為參考**。

#總控指令碼:用不重複隨機數做標記,然後按標記排序

#隨機化的執行程式random的實現

將檔案內容按行隨機排列

在實際工作上有種需求,就是需要從給定的資料裡,隨機抽取一部分。有一種簡單的方法是根據總的資料條數和要抽取的資料條數,通過簡單方法,隔幾行取乙個,這樣也能達到隨機抽取一部分的目的。但這樣,源資料是順序的,則抽取的資料也是順序的,不滿足一些情境。這裡實現的功能是 將全部資料,按行重新隨機排列,這樣從結果...

C語言實現檔案內容按行隨機排列的演算法示例

在實際工作上有種需求,就是需要從給定的資料裡,隨機抽取一部分。有一種簡單的方法是根據總的資料條數和要抽取的資料條數,通過簡單方法,隔幾行取乙個,這樣也能達到隨機抽取一部分的目的。但這樣,源資料是順序的,則抽取的資料也是順序的,不滿足一些情境。這裡實現的功能是 將全部資料,按行重新隨機排列,這樣從結果...

按行讀取檔案

const string strurlfilename testurl.txt ifstream fin strurlfilename.c str fstream binary if fin fin.eof string serverurl getline fin,serverurl info lo...