線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:733
推到 Plurk!
推到 Facebook!

有關一大筆的資料排序

尚未結案
balado
一般會員


發表:14
回覆:6
積分:4
註冊:2003-12-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-01 04:00:52 IP:211.76.xxx.xxx 未訂閱
現在我有一大筆的文字檔案需要排序,由於太過於龐大記憶體吃不下去,只好用外部排序,人家建議我用merge sort去排序,可是以前用陣列的話我可以很快速的去隨機存取,但是要是這些資訊是位於一個大的檔案內勒?是不是我需要再存取資料方面再額外的寫一個parser將我要比較的資料拿出來,還是C當中有提供函式庫可以用?就像fseek可以移到我特定的位置去,可不可以給我個起頭怎麼用C來寫mergesort的外部排序?尤其是對於兩小部分的資料結合這邊
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-02 22:04:22 IP:221.169.xxx.xxx 未訂閱
比較簡單的方式: 先把資料粗略的分一下 例如1000~1999丟到一個檔案去,2000~2999丟到第二個檔案去... 然後針對個別檔案進行排序 最後將檔案依照順序組合起來即可 要用mergesort的話,舉個例 資料先讀一萬筆進來,排序完,丟到一個檔案去 再讀一萬筆,再排序,丟到第二個檔案去... 要將檔案重新組合成一個大檔的時候,在用mergesort將兩個兩個檔案分別merge在一起
系統時間:2024-06-26 13:28:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!