[英]Stack overflow with merge sort algorithm
我試圖按年訂購577000行的文件。 我將哪一行的信息放入雙鏈表中。 為了訂購文件,我嘗試實現合並排序算法,但是由於該算法在訂購大量信息時是遞歸的,因此由於堆棧內存溢出,該算法無法正常工作。 有人可以幫忙尋找一種不會崩潰且不會花費太長時間的更有效的算法嗎?
來自評論:
日期范圍從1730年到2013年
您不需要復雜的排序。 鑒於您只需要涵蓋大約300個不同的年份,這就是我要做的。
制作一個鏈表的array[300]
。 索引零是1730年的鏈表。索引1是1731年的鏈表。
現在,當您從文件中讀取新條目時,可以通過從讀取的年份中減去1730來找到數組索引。 然后,將元素添加到該索引的鏈表中。
讀取整個文件后,將所有鏈接列表放到一個從索引0開始的鏈接列表中。
現在,您具有按年份排序的鏈接列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.