不同的資料如何選取對應的資料結構儲存

2021-10-02 03:11:02 字數 1115 閱讀 6252

這兩天學完stl之後發現知識都在腦子裡,但是到了做題有時候就是不知道該選擇什麼樣的資料結構了- -,結合自己的解題思路和liuchuo在github上的題解來整理的- -,可能不會分類,只是給自己做乙個記錄把。

liuchuo在github題解:

還有我們學校acm**的題:

新oj 的風格太心水了!!!喜歡++

1.資料結構實驗之二叉樹一:樹的同構

首先我們要將每一條結點的資訊儲存在一起,還要能實現在建樹時訪問第i個結點,所以我們選取了結構體儲存每一條結點的資訊。

現在我們能實現在建樹的時候傳值n,就能訪問到第n個結點對應的左子樹、右子樹了。

接下來的問題就是我們如何去開始建樹,我們看到題目的資訊,左右子樹儲存的實際上是結點的編號,如果不是『-』我們可以通過給每個給出的結點編號乙個給定的陣列,如果是1就是有這個結點。我們把所有左右孩子標記了,n個結點中沒有被標記的就是根,從根開始遍歷建樹。

.........很麻煩,都有點繞不過來,後來發現一種解法直接不用建樹,哭泣

我們不用建樹直接比較結點的data資料,如果相等就比較左右孩子是否是一樣的

還是利用了上面說的資料結構儲存結點資訊,也是為了能訪問第i個結點的所有資訊。

Pandas資料的選取

使用python的工具包pandas,可以方便的處理資料。但是發現乙個問題 有時候總是不知道怎麼選取資料。因此在這裡記錄一下。由於在實際使用中,主要用到的就是dataframe的結構,因此,這裡主要說dataframe資料結構中,資料的選取方法。假設我們已經有了dataframe資料,呈現如下結構 ...

clickhouse insert的資料結構

clickhouse insert大致分為兩部分 1.sql語句部分 insert into table f1,f2 2.資料部分資料部分又分為3部分 頭,資料,尾 資料頭 資料塊1 資料塊2 資料塊n 資料尾從中可以看出 每個insert可以包含多個資料塊,每個資料塊可以包含多行。乙個完整的ins...

Hibernate方言 不同資料庫及其對應的方言

在hibernate底層依然使用sql語句來執行資料庫操作,雖然所有關係型資料庫都支援使用標準sql語句,但所有資料庫都對標準sql進行了一些擴充套件,所以在語法細節上存在一些差異,因此hibernate需要根據資料庫來識別這些差異。假如系統需要資料庫的變換時,那麼用hibernate的話就只需要改...