領悟到一點資料結構設計思想

2021-09-27 10:08:07 字數 644 閱讀 9256

物件導向思想

就以資料庫設計為例子,比如對於乙個變電站裝置的端子排,要描述乙個端子排的所有接線資訊。對於這個問題,我們可以從物件導向的角度出發,劃分出這個問題所涉及到的所有物件以及物件之間的關係,由此得,物件有:裝置、進出端子、芯線、端子互聯線、電纜5個物件,物件間的關係是端子所屬乙個裝置,電纜包裹芯線,端子有端子互聯接線、芯線接線兩種情況。

資料庫外來鍵關聯原則

外來鍵就是資料庫表記錄資料間關聯關係的一列表頭,可以是表間資料,也可以是表內資料。

外來鍵原則就是:

1、外來鍵位置:

1)對於一對一關聯(關聯關係),外來鍵記錄在哪個表都可以;

2)對於多對一關聯(聚合關係),外來鍵記錄在多對應的表;

3)外來鍵記錄盡可能集中;

設計結果

所以,對於以上問題,我們可以建立一下資料庫表和表頭資訊:

1)裝置表:唯一編碼、裝置名稱、裝置描述、裝置型號、裝置內含端子數

2)端子表:唯一編碼、端子名稱、端子序號、端子所屬裝置、端子所連芯線、端子互聯接線

3)芯線表:唯一編碼、芯線型別、芯線功能、迴路號、所屬電纜、所連裝置、所連端子

4)端子互聯線表:唯一編碼、互聯型別、所連本端子排端子、所連其他端子排、所連其他端子排端子

5)電纜表:唯一編碼、電纜編號、電纜型號、所含芯線數

每天一點資料結構之插入排序

最近沒有好好寫部落格了,接下來又有幾門考試就隔幾天更新一下吧 今天學習了插入排序,是排序中很簡單的一種,效率不是很高。但比較穩定。主要思想是,遍歷一遍陣列,將陣列集合分為r 0 r i 和r i 1 r n 兩個,前者是排好序的有序集合,後者是亂序的。每次將r i 1 個和前面排好序的關鍵字依次進行...

關於VARIANT資料結構的一點疑問

今天在使用vector結構儲存的時候,發現push back時的資料沒有問題,但是通過下標或迭代器取出來的時候出現了資料不匹配的情況。具體原因還待研究。由於時間的關係,我換了一種方式,用vector結構儲存,具體過程如下。variant pval pval variant cotaskmemallo...

一點點資料庫優化

優化方向 1 資料庫設計 基本支援三正規化 2 新增索引 索引原理 索引以b tree為排序的資料結構,運用二叉樹演算法折半查詢,高效查詢,效率提公升2的n次方 mysql例 索引型別 主鍵索引,唯一索引,全文索引 innodb不支援 組合索引,普通索引 執行查詢計畫 explain 檢視查詢是否使...