为了转行程序员而努力的第四十四天-二叉树,MAC系统virtual box无法启动问题
今天提前醒了,但是因?yàn)樘淞?#xff0c;也沒起來,挨到上班時(shí)間才起床。中午下雪了,冒著大雪去了銀行,還算比較順利,只是額度沒有了,購買看好的結(jié)構(gòu)性存款要等明天了。自從開始學(xué)習(xí)項(xiàng)目類課程以來,深深地體會(huì)到了軟件開發(fā)的博大精深,現(xiàn)在刷題也不再那么恐懼了,因?yàn)橄胂脒€有虛擬機(jī)配置,各種Linux語句這樣更讓我覺得陌生恐懼的事情,好歹刷題是有題解的,多看幾個(gè)總有能看懂的,有的報(bào)錯(cuò)甚至不知道去哪里搜索答案,這么一想,刷題的時(shí)候反而精神放松了。
由于上班的時(shí)候沒有辦法配置環(huán)境,只能先利用空閑時(shí)間學(xué)習(xí)Linux的基本操作,下班回去之后再在電腦上實(shí)現(xiàn),可能進(jìn)度比較緩慢,但是每天前進(jìn)一點(diǎn),把發(fā)現(xiàn)的問題報(bào)錯(cuò)都記錄下來,也是很有收獲的。
今日進(jìn)度:
1.抽時(shí)間去銀行重新授權(quán)了,至少現(xiàn)在在手機(jī)上就可以嘗試?yán)碡?cái)了
2.想清楚了積極的態(tài)度對于實(shí)現(xiàn)遠(yuǎn)大目標(biāo)的重要性,有時(shí)候恰恰是害怕努力之后無法實(shí)現(xiàn)目標(biāo)這樣消極的態(tài)度本身,導(dǎo)致了最終走向不好的結(jié)局,抱著積極正向的態(tài)度,每一天都為實(shí)現(xiàn)目標(biāo)而努力一點(diǎn)點(diǎn),萬一有一天真的實(shí)現(xiàn)了呢
3.堅(jiān)持聽網(wǎng)課,堅(jiān)持刷題
4.堅(jiān)持鍛煉,發(fā)現(xiàn)一個(gè)強(qiáng)度比較高的3分鐘瘦肚子訓(xùn)練,非常適合每天堅(jiān)持做,也不會(huì)花太多時(shí)間,正好可以和肩頸鍛煉組合起來
5.堅(jiān)持錄小王子,今天說什么也要錄一篇了,否則都快忘記有這回事了
6.配置環(huán)境的時(shí)候發(fā)現(xiàn)了一個(gè)bug解決了,雖然整體相當(dāng)于還沒開始,但還是有收獲
學(xué)習(xí)筆記:
1.Linux文件類型,第一個(gè)符號(-文件,d目錄,l軟鏈接文件)
2.chmod u+x 文件名賦予權(quán)限
chmod u=rwx 文件名,不用獲取之前的權(quán)限,直接賦予權(quán)限
chmod 755 文件名
3.權(quán)限對文件的作用
r:讀取文件內(nèi)容,cat,more,head,tail
w:編輯,新增,修改文件內(nèi)容(vi,echo),不包括刪除文件
x:可執(zhí)行
4.權(quán)限對目錄的作用
r:可以查詢目錄下文件名(ls)
w:修改目錄的權(quán)限,如新建,刪除,重命名,剪切(touch,rm,mv,cp)
x:可以進(jìn)入目錄(cd)
5.對文件,最高權(quán)限是x;對目錄,最高權(quán)限是w
6.MAC系統(tǒng)virtual box無法啟動(dòng)
Kernel driver not installed (rc=-1908)
Make sure the kernel module has been loaded successfully.
where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The
support driver is not installed. On linux, open returned ENOENT.
是由Mac系統(tǒng)升級導(dǎo)致的,需要卸載virtual box再重新安裝,安裝時(shí)需設(shè)置安全與隱私-通用
點(diǎn)擊仍要打開,虛擬機(jī)就可以正常啟動(dòng)了。
7.112. 路徑總和
給你二叉樹的根節(jié)點(diǎn) root 和一個(gè)表示目標(biāo)和的整數(shù) targetSum 。判斷該樹中是否存在 根節(jié)點(diǎn)到葉子節(jié)點(diǎn) 的路徑,這條路徑上所有節(jié)點(diǎn)值相加等于目標(biāo)和 targetSum 。如果存在,返回 true ;否則,返回 false 。
葉子節(jié)點(diǎn) 是指沒有子節(jié)點(diǎn)的節(jié)點(diǎn)。
輸入:root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22
輸出:true
解釋:等于目標(biāo)和的根節(jié)點(diǎn)到葉節(jié)點(diǎn)路徑如上圖所示。
解題思路:從上往下的遞歸,分別順著左子樹與右子樹往下走,沒經(jīng)過一個(gè)節(jié)點(diǎn),用target減去當(dāng)前的值,直到葉子節(jié)點(diǎn)等于target,就找到了。
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val = val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val = val;* this.left = left;* this.right = right;* }* }*/ class Solution {public boolean hasPathSum(TreeNode root, int targetSum) {if(root == null){return false;}if(root.left==null && root.right==null){return root.val==targetSum;}return hasPathSum(root.left, targetSum-root.val) || hasPathSum(root.right, targetSum-root.val);} }8.404. 左葉子之和
計(jì)算給定二叉樹的所有左葉子之和。
3
/ |
9 20
/ |
15 7
在這個(gè)二叉樹中,有兩個(gè)左葉子,分別是 9 和 15,所以返回 24
解題思路:如果左節(jié)點(diǎn)為葉子節(jié)點(diǎn),sum直接加上,否則加上對左節(jié)點(diǎn)進(jìn)行遞歸找出左節(jié)點(diǎn)左葉子的和;如果右節(jié)點(diǎn)不為葉子節(jié)點(diǎn),sum加上對右節(jié)點(diǎn)進(jìn)行遞歸找出右節(jié)點(diǎn)左葉子的和
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val = val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val = val;* this.left = left;* this.right = right;* }* }*/ class Solution {public int sumOfLeftLeaves(TreeNode root) {if(root==null){return 0;}else{return sumOfL(root);}} public int sumOfL(TreeNode root){int s = 0;if(root.left!=null){s += isLeaf(root.left) ? root.left.val : sumOfL(root.left);}if(root.right!=null && !isLeaf(root.right)){s += sumOfL(root.right);}return s;}public boolean isLeaf(TreeNode root){if(root.left==null && root.right==null){return true;}else{return false;}} }明天繼續(xù)配置centOS,明天繼續(xù)更新。
總結(jié)
以上是生活随笔為你收集整理的为了转行程序员而努力的第四十四天-二叉树,MAC系统virtual box无法启动问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 磁盘阵列服务器安装操作系统,板载RAID
- 下一篇: 常用第三方APP 的url scheme