c 讀大量資料的txt,設定索引

2021-10-07 08:21:07 字數 2601 閱讀 9670

總結以前乙份**的閱讀,2019華為軟挑

交通規劃,給出路,路口,車輛三個txt檔案,要求讀取資料,並規劃車輛行駛出發時間和具體路徑,車輛行駛有具體交通規則要求。使所有車輛最快到達目的地 並 程式最快規劃出結果為優。賽期:總共1個半月時間;

本人隊長:

1、時間規劃:第一周讀需求文件;第2週搭好輸入輸出;第三週寫演算法;第四周除錯並測試效能(預期是完美的,現實…)

2、任務規劃:(code就完事了,太久了 不記得了)

思路:1、每個車,每條路,每個路口,都設定成乙個物件;

2、為車,路,路口設定乙個資料集基類,搭建索引。

3、複賽中,car中增加了優先車以及預置車,所以car中有乙個預設路徑。

**如下(示例):

//車(配置檔案資料)

class rawcar

void

init()

;void

printinfo()

;public:

int m_id;

int m_source_cross_id;

int m_target_cross_id;

int m_max_speed;

int m_plan_time;

int m_priority;

int m_preset;

int m_preset_start_time;

vector<

int> m_preset_road_id_list;

public:

rawcross* m_psourcecross;

rawcross* m_ptargetcross;

vector> m_ppresetroadlist;

};

//所有車(配置檔案資料)

class rawcarset : public baseset

;extern rawcarset grawcars;

#endif

//__raw_car_h__

//集合基類

template

class baseset

public:

void

(size_t max_id)

t*getbyid

(int id)

size_t size()

t*get(size_t i)

public:

timer t;

vector data;

vector};

//整理用,號分開的資料

std:

:vector<

int>

split

(const std:

:string& s,

const std:

:string& delim)

elems.

push_back

(atoi

(s.substr

(pos, find_pos - pos)

.c_str()

)); pos = find_pos + delim_len;

}return elems;

}void rawcarset:

:readfile

(const string& path,

const string& path2)

file.

close()

;sort

(data.

begin()

, data.

end())

;//構建id查詢對映表

(max_id)

;for

(size_t i =

0; i < data.

size()

; i++

).m_id]

=&data[i]

;//讀取presetanswer.txt

int n_preset =0;

std:

:vector<

int> splited_str;

file.

open

(path2)

;getline

(file, line_str)

;while

(getline

(file, line_str)

) cout <<

"read car.txt&presetanswer.txt, preset:"

<< n_preset;

cout <<

", controlable:"

<< data.

size()

- n_preset;

cout <<

", total:"

<< data.

size()

; t.

show

(",");

}

簡單看一了一下以前資料讀入和儲存的方法,這裡只記錄車的資料吧,其他的都一樣。因為追求演算法解答結果的速度,所有資料都存在記憶體。(有要求不讓用其他庫)

將printf 顯示的大量資料,儲存為txt文件

由於c執行結果的時候,執行命令的顯示視窗不能顯示大量資料,所以,選擇將其儲存為txt文字格式,有多少,儲存多少。程式 正確 include stdio.h include int main int argc,const char argv int i fp fopen b.txt w if fp n...

C 資料庫連線設定並把設定寫入到txt文字中

using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using system.text u...

C 之txt的資料寫入

小夥伴們在使用c 開發時,可能需要將一些資訊寫入到txt,這裡就給大家介紹幾種常用的方法。string lines system.io.file.writealllines 想儲存的位置 writelines.txt lines string text 這是第一行 r n 這是第二行 system....