概念 深度優先搜尋是一種圖的走訪方式。以一個圖的例子來解釋:圖上有編號為 到 的節點。如果我們從節點 開始走,我們會先往與節點 相鄰的節點走,然後一直往...
前言 今天講解兩題相關題目,希望大家可以透過題目更加瞭解二分搜尋使用時機 TOJ 47 / PB magic spell 題目說明 簡單來說有多筆詢問,要找出詢...
概念 二分搜尋是一種在已經排序過的資料中快速找到目標資料的高效率的演算法。這個方法建立在一個基本的觀念上:將資料集一分為二,然後根據目標資料與中間元素的大小比較...
ChatGPT寫程式的問題解答正確率 研究顯示ChatGPT寫程式的問題解答正確率不到五成,但很容易被採信https://www.ithome.com.tw/...
UVA10268 ChatGPT 問題輸入: 大學程式能力檢定 UVA10268 498’ 問題的中文與英文描述,包含錯誤處理和邊界檢查的完整C++範例程式碼...
UVA10056 ChatGPT 問題輸入: 大學程式能力檢定 UVA10056 What is the Probability!! 問題的中文與英文描述,包...
UVA12019 ChatGPT 問題輸入: 大學程式能力檢定 UVA12019 A - Doom's Day Algorithm 問題的中文與英文描述,包含...
UVA490 ChatGPT 問題輸入: 大學程式能力檢定 UVA490 Rotating Sentences 問題的中文與英文描述,包含錯誤處理和邊界檢查的...
CPE 大學程式能力檢定 CPE 大學程式能力檢定(College Programming Examination)是台灣的一項程式能力檢定考試,由台灣電腦軟體...
UVA10008 ChatGPT 問題輸入: 大學程式能力檢定 UVA10008 What's Cryptanalysis? 問題的中文與英文描述,包含錯誤處...
UVA10101 ChatGPT 問題輸入: 大學程式能力檢定 UVA10101 Bangla Numbers 問題的中文與英文描述,包含錯誤處理和邊界檢查的...
客製化ChatGPT 中文繁簡體轉換,請在ChatGPT Custom instructions1.What would you like ChatGPT to...
UVA10055 ChatGPT 問題輸入: 大學程式能力檢定 UVA10055 Hashmat the brave warrior 問題的中文與英文描述,包...
前言 ChatGPT是一個由OpenAI訓練的大型生成式語言模型,其中常用的有GPT-3、GPT-3.5、GPT-4版本,GPT-3 在半監督式模式下接受訓練,...
C++包成DLL給C#呼叫這點,網路上已經有很多相關文章了,可惜那些文章都只是傳遞基礎的int, float, double等,缺乏指標資料的傳遞方式,因此來做...
#include <iostream> using namespace std; /* * Create classes Rectangle a...
#include <cmath> #include <cstdio> #include <vector> #include...
#include <cmath> #include <cstdio> #include <vector> #include...
#include<iostream> using namespace std; class A { public: A()...
熟悉使用C/C++開發WebAssembly整合 libusb透過 Web USB及Bluetooth API,連接GPS設備,讀取/寫入GPS資料 聯繫方式:...
30 天的時間,我分享了資料結構的入門,從最根本的指標開始,到進階的鏈結串列,再到二元搜尋樹。 我覺得最困難的部分大概就是指標了吧!因為鏈結串列、二元樹都是基於...
學了二元搜尋樹的基本,那想過怎麼判斷這棵樹是不是二元搜尋樹嗎? 還記得有一個遍歷演算法叫做「中序遍歷」或 inorder traversal 嗎?用這個遍歷法...
在二元搜尋樹中,有這麼一個經典的題目:尋找兩節點的共同祖先! 但是共同祖先可以有很多個,所以我們會選擇最接近的共同祖先作為這題的輸出。 那要怎麼實作呢? 我們...
今天我們要完成以下的狀況: 目標節點(BSTNode *tg)可以分成三種狀況: tg == NULL : 目標不存在 tg == this -> ro...
刪除節點一向都是比較困難的,我們要去注意 根節點是不是我們要去刪除的目標節點 如何連接目標節點的父節點與子節點 如果目標節點有兩個子節點,又該如何與父節點連接...
今日目標: BST::getMax() BST::getMin() BST::search(int tg) (註:tg 為 target 的縮寫)...
今天要來完成第四種遍歷法:Level Order Traversal 比起前三者來說,他顯得更加直觀,因為他是按照 level 大小來輸出資料,換句話說,就是由...
上一篇文章,我們對三種遍歷法都有一定的認識了,今天我們要練習用迴圈來實作,難度會深一點! 我們都知道在遍歷一棵樹時,會遇到無數的岔路,那你有想過要怎麼紀錄岔路嗎...
想輸出鏈結串列其實很容易,只要找到當前節點的 next 即可找到下一個節點。有了節點,我們就可以輸出節點中的資料。這個是之前介紹過的 LinkedList::p...
新增節點的方式大概可以以兩種方式來概括: 非遞迴形式:void BST::insert(int); 相對直觀 使用 while 迴圈 遞迴形式:void...