The Wayback Machine - http://web.archive.org/web/20210121074433/https://github.com/06170125/Learning_code
Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
123
 
 
 
 
 
 
HW1
 
 
HW2
 
 
HW3
 
 
HW4
 
 
HW5
 
 
HW6
 
 
 
 
 
 

README.md

資料結構演算法 Learning_code

HI I am ying_chun~

This is the way for me to learning how to write the code.

I hope I can do my best to do it.

資料結構演算法每週記事


Week_1 09/13

中秋節放假

About Class

About Grade

Lecture_1

Week_2 09/20

About Linked List

Linked list(連結串列)是一種常見的資料結構,其使用node(節點)來記錄、表示、儲存資料(data),並利用每個node中的pointer指向下一個node,藉此將多個node串連起來形成Linked list,並以NULL來代表Linked list的終點

My Linked List

Lecture_2

Week_3 09/27

About Stack

◆堆疊

◆Last-In,First-Out

◆最早進入Stack」的資料則「最晚被取出」

About Queue

◆隊列

◆First-In, First-Out

◆最早進入Queue」的資料則「最早被取出」

My Stack & Queue

Lecture_3

Week_4 10/04

About Insertion Sort

◆插入排序法

◆平均時間複雜度O(n^2)

◆通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃描,找到相應位置並插入

My Insertion Sort

Lecture_4

Week_5 10/11

國慶日連假放假

About QuickSort

◆快速排序法

◆平均時間複雜度:O(n log n)

◆從數列中挑出一個元素,稱為「基準」,有比基準值小的元素擺放在基準前面,所有比基準值大的元素擺在基準後面,遞迴地將小於基準值元素的子序列和大於基準值元素的子序列排序

My QuickSort

Lecture_5

Week_6 10/18

About HeapSort

◆堆積排序法

◆平均時間複雜度:O(n log n)

◆堆積中的最大值總是位於根節點,將堆積的末端子節點作調整,使得子節點永遠小於父節點,將堆積中的所有資料重新排序,移除位在第一個資料的根節點,並做最大堆積調整的遞迴運算

My HeapSort

Lecture_6

Week_7 10/25

About MergeSort

◆合併排序法

◆平均時間複雜度:O(n log n)

◆把資料“分割”成兩部分再各自進行Merge Sort,最後將兩部分在整合起來

My MergeSort

Lecture_7

Week_8 11/1

About Binary Tree

◆二元樹

◆每個節點最多只有兩個子節點

◆把大於節點放右子節點;小於節點放左子節點

My Binary Tree

Lecture_8

Week_9 11/8

About 期末專案blockchain展演

About 下學期區塊鏈方案

Week_10 11/15

About Binary Search Tree

◆二元搜尋樹

◆每個節點最多只有兩個子節點

◆把大於節點放右子節點;小於節點放左子節點

◆有搜尋、新增、刪除、修改功能

My Binary Search_Tree

Lecture_10

Week_11 11/22

About Red Black Tree

◆紅黑數

◆節點是紅色或黑色

◆根是黑色

◆每個紅色節點必須有兩個黑色的子節點

◆從任一節點到其每個葉子的所有簡單路徑都包含相同數目的黑色節點

My Red Black Tree

Lecture_11-1

About Hash Table

◆雜湊表

◆是資料結構的一種,利用Hash Function有效率地進行數據搜尋雜湊函數能使對一個數據序列的查詢過程更加迅速有效,通過雜湊函數,數據元素將被更快定位

My Hash Table

Lecture_11-2

Week_12 11/29

About Breadth-First Search

◆廣度優先搜尋演算法

◆平均時間複雜度O(V+E)

◆BFS是從根節點開始,沿著樹的寬度遍歷樹的節點。如果所有節點均被存取,則演算法中止。

My Breadth-First Search

Lecture_12

Week_13 12/06

About Depth-First Search

◆深度優先搜尋演算法

◆平均時間複雜度O(V+E)

◆沿著樹的深度遍歷樹的節點,儘可能深的搜尋樹的分支。當節點v的所在邊都己被探尋過,搜尋將回溯到發現節點v的那條邊的起始節點。這一過程一直進行到已發現從源節點可達的所有節點為止。如果還存在未被發現的節點,則選擇其中一個作為源節點並重複以上過程,整個行程反覆進行直到所有節點都被存取為止。

My Depth-First Search

Lecture_13

Week_14 12/13

About Minimum Spanning Tree

◆最小生成樹

◆連通加權無向圖中一棵權值最小的生成樹

◆按照邊的權重順序(從小到大)將邊加入生成樹中,但是若加入該邊會與生成樹形成環則不加入該邊。直到樹中含有{\displaystyle V-1}V-1條邊為止。這些邊組成的就是該圖的最小生成樹。

My Minimum Spanning Tree

Lecture_14

Week_15 12/20

About Shortest Path

◆戴克斯特拉演算法

◆以weight總和表示path之成本,並以具有方向性之edge表示兩個vertex之間的關係

My Shortest Path

Lecture_15

Week_16 12/27

期末考說明

同學期末專案分享

Week_17 1/03

期末考

Week_18 1/10

快樂放寒假

資料結構演算法每次作業


HW1

Quick Sort 程式碼

Quick Sort 流程圖

HW2

Merge Sort 程式碼

Merge Sort 流程圖

Heap Sort 程式碼

Heap Sort 流程圖

Heap Sort v.s. Merge Sort

HW3

Binary Search Tree 程式碼

Binary Search Tree 流程圖

Binary Search Tree 功能說明

HW4

Hash Table 程式碼

Hash Table 流程圖

HW5

BFS 程式碼

BFS 流程圖

DFS 程式碼

DFS 流程圖

BFS v.s. DFS

HW6

Dijkstra 程式碼

Dijkstra 流程圖

Krustal 程式碼

Krustal 流程圖

資料結構演算法自主練習


LeetCode

01#Two Sum

21#Merge Two Sorted Lists

27#Remove Element

43#Multiply Strings

953#Verifying an Alien Dictionary

CodeSignal

About Count_Bits

About Modeulus

About Simple_Sort

About Base_Conversion

About Mex_Function

About List_Beautifier

Machine Learning

About Machine Learning

資料結構演算法期末心得


我對這一科只有一個字「累」。但是這堂課讓我從一開始的E排小廢物,成功爬到C排普通廢物了!!!!!!這學期還很智障先修了大四必修《機器學習導論》有時候真心很想掐死選課時的自己...蔡教授的課真的很考驗自學的能力以及大腦的運作力QxQ

About

No description or website provided.

Topics

Resources

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.