DAY11 - DFS應用 - iT 邦幫忙

文章推薦指數: 80 %
投票人數:10人

DAY11 - DFS應用. 算法與數據結構&力扣例題實戰系列第11 篇. raychang0901. 4 個月前‧ 289 瀏覽. 0. 昨天寫了DFS模板,今天就搭配模板放幾題DFS的例題!! 2021iThome鐵人賽 DAY 11 0 自我挑戰組 算法與數據結構&力扣例題實戰系列第 11篇 DAY11-DFS應用 13th鐵人賽 raychang0901 2021-09-1113:47:37297瀏覽 昨天寫了DFS模板,今天就搭配模板放幾題DFS的例題!! voiddfs(){ if(越界或不合理狀態) return for(對當前節點擴展){ if(next_node合理&&未被訪問){ vis[next_node]=1 dfs(next_node) vis[next_node]=0 } } } 例題實戰 230.二叉搜索树中第K小的元素 二元樹&DFS 從程式碼就會發現其實在應用的時候程式還是跟模板很像的,只要確認好調用的時機就好~~ /** *Definitionforabinarytreenode. *structTreeNode{ *intval; *TreeNode*left; *TreeNode*right; *TreeNode():val(0),left(nullptr),right(nullptr){} *TreeNode(intx):val(x),left(nullptr),right(nullptr){} *TreeNode(intx,TreeNode*left,TreeNode*right):val(x),left(left),right(right){} *}; */ classSolution{ stacksta; public: intkthSmallest(TreeNode*root,intk){ dfs(root,k); returnsta.top(); } voiddfs(TreeNode*root,intk){ if(root==nullptr){ return; } dfs(root->left,k); if(sta.size()==k){ return; } sta.push(root->val); dfs(root->right,k); } }; 剑指Offer36.二叉搜索树与双向链表 這題是二元樹的中序遍歷 ((其實就是一邊中序遍歷,一邊指向正確的節點)) /* //DefinitionforaNode. classNode{ public: intval; Node*left; Node*right; Node(){} Node(int_val){ val=_val; left=NULL; right=NULL; } Node(int_val,Node*_left,Node*_right){ val=_val; left=_left; right=_right; } }; */ classSolution{ Node*front=nullptr; Node*head=nullptr; public: /*二元樹的中序遍歷符合雙向鏈的順序*/ Node*treeToDoublyList(Node*root){ if(root==nullptr){ returnnullptr; } dfs(root); front->right=head; head->left=front; returnhead; } voiddfs(Node*curr){ if(curr==nullptr){ return; } dfs(curr->left); if(front==nullptr){//遍歷到第一個節點 head=curr; } else{ front->right=curr; } curr->left=front; front=curr; dfs(curr->right); } }; 47.全排列II 排列在昨天的文章有寫了一題,這邊再補一題允許重複的~~ classSolution{ vector>res; public: vector>permuteUnique(vector&nums){ sort(nums.begin(),nums.end()); generate(nums,0); returnres; } voidgenerate(vectornums,intn){ if(n>=nums.size()) { res.push_back(nums); return; } for(inti=n;i 中華電信企業資安攻擊名稱HTTP-APACHE-LOG4j2-BODY6-RCE 熱門文章 【Day31】新加坡工作後續的時程 2021法遵科技與電腦稽核專題競賽-賀雲科大、逢甲、北商大、中正、致理科大、亞洲科大等學校隊伍獲獎,培育智慧法遵與AI稽核人才邁向國際~ Laravel-jQueryAJAX範例 [Day33]HexoxNexT-顯示最新文章、導入GoogleAnalytics的坑 【徵才】台北中山區-知名航空貨運-資訊網管人員 重構原本的內容(golang)(Day22) 科學家與研究生的關係研究篇 30天Python自學:Day01 [Day??]2021iThome鐵人賽-頒獎典禮@2022.01.08‧輔仁大學 印表機維修五種常見故障,若遇到問題就能先自己排除了 一週點數排行 更多點數排行 海綿寶寶(antijava) Gary(mosbbs) raytracy(raytracy) 一級屠豬士(hitomitanaka) Samuel(kuanyu) ccenjor(ccenjor) 居然解出來了(partyyaya) horace_work(horace_work) 純真的人(jer5173) souda(souda) × At 輸入對方的帳號或暱稱 Loading 找不到結果。

標記 {{result.label}} {{result.account}} 關閉



請為這篇文章評分?