---
title: "kiniku (@chow) | Hashnode"
description: "コツコツやる"
url: "https://hashnode.com/@chow"
---

@chow

# kiniku

@chow · Taiwan · Joined May 2023

### [Binary Tree](https://kiniku.hashnode.dev/binary-tree?utm_source=hashnode&utm_medium=feed)

樹狀結構的一些專有名詞 一般的樹狀結構擁有以下的特徵： 節點：代表某項資料 根結點：沒有父節點的節點，一顆樹也只能有一個根結點 父節點、子節點：若某個節點連接到下面一個節點，則該節點為父節點，而下面的節點稱為子節點 祖先節點、子孫節點：若某個節點有一條路徑可以通往另一個節點，那就代表該節點為祖先節點 兄弟節點：當它們都是同一個父節點的子節點時則該子節點們互為兄弟節點 樹葉節點：分支度為0的節點 分支度：一個節點有幾個子節點稱為分支度 高度：某節點到距離最遠的樹葉節點的最長路徑...

5 min read · [kiniku.hashnode.dev](https://kiniku.hashnode.dev/binary-tree?utm_source=hashnode&utm_medium=feed)

[Jun 12, 2023](https://hashnode.com/posts/binary-tree/6486a0fdfe46726241a2221d)

### [Multiple Stacks](https://kiniku.hashnode.dev/multiple-stacks?utm_source=hashnode&utm_medium=feed)

Introduction 所謂的多個堆疊，是指在一個陣列裡實現K個堆疊，如下方圖片裡，3個堆疊要平分陣列裡的位址 要實現多個堆疊有兩個方法可以實現 Simple method：將陣列劃分為 n/k Efficient method：節省空間 Implementation Simple method 結構定義 push() 加入時要先判斷該堆疊是否已經到下一個堆疊的bottom了 pop() 刪除時只要判斷同一個堆疊是否相同就好，然後再把該堆疊的top遞減 完整的程式碼 #incl...

5 min read · [kiniku.hashnode.dev](https://kiniku.hashnode.dev/multiple-stacks?utm_source=hashnode&utm_medium=feed)

[May 27, 2023](https://hashnode.com/posts/multiple-stacks/647206605b4db033d85c1660)

### [Doubly Circular Linked List](https://kiniku.hashnode.dev/doubly-circular-linked-list?utm_source=hashnode&utm_medium=feed)

Introduction 雙向鏈結串列與單向鏈結串列相比，雙向鏈結串列多了一個指向前一個節點的指標 並且最後一個節點會重新指回head節點，head節點也會指向最後一個節點 Methods 以下為雙向鏈結串列常見的操作 Insertion：加入節點 Deletion：刪除節點 Search：查詢該節點是否存在於雙向鏈結串列 Reverse：反轉雙向鏈結串列 Time Complexity OperationTime ComplexityWorst Time ComplexityS...

5 min read · [kiniku.hashnode.dev](https://kiniku.hashnode.dev/doubly-circular-linked-list?utm_source=hashnode&utm_medium=feed)

[May 14, 2023](https://hashnode.com/posts/doubly-circular-linked-list/6460707d0655f83688d52e17)

### [Array、Singly Linked List](https://kiniku.hashnode.dev/c-arraysingly-linked-list?utm_source=hashnode&utm_medium=feed)

Introduction 最基本的資料結構就是由線性排列儲存的，我們可以分成利用陣列或是鏈結串列，這2者的差別在於陣列在記憶體中是連續排列的，而鏈結串列在記憶體中不是連續排列的。 鏈結串列指的是將多個不連續的資料節點，透過指標方式串連起來的資料結構，鏈結串列由多個節點組成，每個節點至少包含資料以及儲存下一個位址的指標 鏈結串列因為可以動態的增加和刪除節點，因此在頻繁需要加入和刪除的時候會很有用，因為當陣列要加入或刪除時，必須要移動節點才不會浪費空間 Dynamic Array #includ...

9 min read · [kiniku.hashnode.dev](https://kiniku.hashnode.dev/c-arraysingly-linked-list?utm_source=hashnode&utm_medium=feed)

[May 12, 2023](https://hashnode.com/posts/c-arraysingly-linked-list/645e78247fa416d6c3ef5700)

### [Data Structure: Queue](https://kiniku.hashnode.dev/queue-data-structure?utm_source=hashnode&utm_medium=feed)

Introduction 佇列是一種先進先出的一種資料結構，類似於堆疊，但差別在於佇列刪除的元素是最早加入的元素 但是會發生陣列的前面還有空間，但因為rear已經大於等於n - 1，所以會產生佇列已滿的訊息，因此佇列常常以環狀佇列的方式來表示 Methods Enqueue：加入資料到佇列裡 Dequeue：刪除front變數所指的值 isEmpty：檢查佇列是否是空的 Peek：取得front變數所指的值 Time Complexity OperationTime Comple...

4 min read · [kiniku.hashnode.dev](https://kiniku.hashnode.dev/queue-data-structure?utm_source=hashnode&utm_medium=feed)

[May 10, 2023](https://hashnode.com/posts/queue-data-structure/645b9c282ff9a17f336b33b7)
