有点头晕,整天犯困,该锻炼了

Leetcode 112. 路径总和

题目

给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。

说明: 叶子节点是指没有子节点的节点。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/path-sum
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

题解及思路

首先想到两种方法:其一是将父节点的值加到子节点上,不断更新每棵子树子节点的值,即有如下公式:
root->left->val = root->val + root->left->val
root->right->val = root->val + root->right->val
当当前节点为叶子节点时检查该叶子节点的值是否等于给定值。
该方法的代码部分感觉比较麻烦故没有写,代码大概是初始创建两个队列,一个保存叶子节点,一个保存当前节点,最初将根节点放入当前节点队列,遍历该队列并对队列中节点的左右子节点加上该节点的值,循环这个操作直至当前节点没有子节点,然后将该节点存入叶子节点队列,最后对叶子节点队列遍历判断是否存在给定值。(这是最初的想法,可以不用那个叶子节点队列的,用是为了方便我思考)
后一种方法就是常见的递归,说到树就会想到递归,正好题目中的函数传入了两个值,也方便了直接写递归函数。大体思路就是遍历树,在遍历树的同时对给定值减掉当前节点的值,当遍历到叶子节点时一旦给定值减到0了,就找到了指定的路径,代码如下:

 bool hasPathSum(TreeNode* root, int sum) {if(!root){return false;}int judge = false;if(root->left){judge |= hasPathSum(root->left, sum - root->val);}if(root->right){judge |= hasPathSum(root->right, sum - root->val);}if(!root->left && !root->right){if(root->val != sum){return false;}else{return true;}}return judge;}

渐入气氛的克苏鲁

今天没少看,《胡安 罗梅罗的转变》、《白船》、《街道》、《降临于萨尔纳斯的厄运》、《伦道夫 卡特的供述》。

《胡安 罗梅罗的转变》

嗯。。感觉有点意义不明的一篇,没太看懂,据说洛夫克拉夫特本人也不承认有这么一篇。故事是从一个来美国淘金的人开始,这个人并没有讲述他的前半生,只是说去过印度并且带回来一枚戒指,淘金期间有不少墨西哥人也加入了,“无知又愚昧、邋里邋遢”大概就是这种印象的棕色皮肤墨西哥人,胡安 罗梅罗也是其中一员,他是个孤儿似乎信仰着阿兹特克的某个神明,而且他明确流露出对主人公戒指的好奇、并非出于金钱方面。某天炸矿结果炸出个地下溶洞?类似于地下溶洞的洞穴吧,结果晚上就开始有莫名其妙的声音、来自地底,这声音对胡安 罗梅罗产生了极大的影响,他以一种极其激动或是说兴奋的态度在倾听、自言自语,主人公也被吸引,俩人就这么在别人不知道的情况下下洞了,这戒指也是奇了怪了,自己发光指向洞穴的深处,胡安 罗梅罗就进入了洞穴深处被岩浆融化了?还是被类似太阳的东西烧死了?总之是死了,烧死的,给主人公吓过去了。结果主人公醒了发现他俩根本没出门,但是胡安 罗梅罗的确是死了,他的戒指也没了,洞穴也被昨晚的一块大落石填上了,不过主人公听到了那晚胡安 罗梅罗喊的一个名字“维奇洛波奇特利!”。说实在的我看完还是一头雾水,也没有出现什么高层次生命或者预兆或者联系之类的,完全没有理解洛夫克拉夫特到底在讲什么,不过我倒是查了一下“维奇洛波奇特利”,阿兹特克人的至高神,阿兹特克人的神明由来很有意思,都是通过征服其他部落、再把该部落的神明融入到自己的神话中,但“维奇洛波奇特利”、或者说阿兹特克神话中的战神、太阳神、太阳与火之主、南方的统治者,是阿兹特克人自己的神明,是阿兹特克的至高神,不过还是没弄懂和一个印度的戒指有什么关系。

《白船》

与其说这是一篇小说,不如说是一个梦境。就像黄粱一梦一样,故事的主人公乘坐白船游历了各个岛屿,人本拥有却遗忘的的美好梦境与想象所成之岛——扎尔;人们所窥视的全部奥秘之岛——撒拉伦;欢愉不曾光临之地——夏阿;幻想之地、超越时空、生死之地——索那 尼尔;诸神之岛——克修利亚。在索那 尼尔居住了好像永恒那么久之后,主人公忍不住好奇还是选择前往克修利亚,可那里是众神的居所,凡人怎能踏足!终究,白船掉出了世界,掉入了终焉的虚空中,而主人公醒来发现自己还在灯塔下——只不过从他爷爷以来没有熄灭过的灯塔第一次熄灭了。梦境总是美的难以言喻,不过很少有人能描绘出来,大多对梦境的描绘都只是只言片语、零散的连不起来,只有少数有强烈语言天赋或者被选中的人才能详细的描述梦境吧,《白船》真的就像在描述梦境一样。

《街道》

糟糕的作品,强烈的种族主义文章,充斥着对印第安人和黑人的歧视,没什么可说的,街道之所以成为废墟,还不是因为那些所谓“恪守着古老文明传统的人”。

《降临于萨尔纳斯的厄运》

很克苏鲁风的一篇,描述和气氛渲染很到位,除了我没看懂为啥萨尔纳斯王变成蜥蜴,所以这是个每隔千年醒一次、敢侮辱自己就把对面变成蜥蜴人的旧日支配者?精彩倒是很精彩,恐怖是真的没感觉恐怖,如果厄运仅仅是把对面变成蜥蜴人,还不如写伯克鲁格在梦境把他们逼疯了吓人,真的是洛夫克拉夫特笔下相当温和的旧日支配者了,人不犯我我不犯人,根本没有主动的恶意。

《伦道夫 卡特的供述》

哦吼吼,卡特出场了!这篇写的相当不错,因为内(wo)容(xian)很(tai)棒(lei)我就不剧透故事了,总之是非常不错的克苏鲁风了,看的时候会不自觉代入角色产生一种紧张感,尤其是最后那一部分,虽然是第n次看还能让我感到有点毛骨悚然。
其实还看了《可怕的老人》和《树》,太困了就留到明天写。

2020年7月7日打卡相关推荐

  1. 2020年6月23日打卡

    打卡 2020年6月23日 计划与安排 Leetcode 67. 二进制求和 学习笔记 这位先生我能占用您一点时间吗-- 计划与安排 预期每天在博客中叙述如下内容: 每日做leetcode的感悟与题解 ...

  2. 2020年7月1日打卡

    久违的克苏鲁 今天算是看到了洛夫克拉夫特不一样的一面吧,首先是<回忆塞谬尔 约翰逊博士>,怎么说呢,完全看不懂,通篇在描述一个文人间集会的故事,就像爷爷奶奶辈的人唠叨年轻时的伙伴一样,译者 ...

  3. 2020年7月8日打卡

    面试题 16.11. 跳水板 题目 你正在使用一堆木板建造跳水板.有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer.你必须正好使用k块木板.编写一个方法,生成 ...

  4. 2020年7月12日打卡

    Leetcode 174. 地下城游戏 题目 一些恶魔抓住了公主(P)并将她关在了地下城的右下角.地下城是由 M x N 个房间组成的二维网格.我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿 ...

  5. AI:2020年6月23日北京智源大会演讲分享之机器学习专题论坛——09:45-10:25邢波教授《A Blueprint of Standardized and Composable ML》

    AI:2020年6月23日北京智源大会演讲分享之机器学习专题论坛--09:45-10:25邢波教授<A Blueprint of Standardized and Composable ML&g ...

  6. AI:2020年6月16日晚20点陆奇博士演讲《陆奇直播万字实录:正视挑战,把握创业创新机会》

    AI:2020年6月16日晚20点陆奇博士演讲<陆奇直播万字实录:正视挑战,把握创业创新机会> 导读:在疫情带来的新格局里,有哪些是创业者可以抓住的长期趋势?前沿技术的突破带来哪些创新和创 ...

  7. AI:2020年6月16日晚20点陆奇博士演讲《正视挑战把握创业创新机会》

    AI:2020年6月16日晚20点陆奇博士演讲<正视挑战把握创业创新机会> 导读:陆奇,毕业于复旦大学,获计算机科学学士.硕士学位,1987年毕业后留校执教.此后就读于卡耐基梅隆大学,获计 ...

  8. 2020年阴阳师服务器维护,2020阴阳师2月19日更新官方公告及内容汇总

    小编今天给各位玩家朋友们带来的是2020阴阳师2月19日更新官方公告及内容汇总,阴阳师今天进行了版本更新,大家期待已久的超鬼王活动也是正式上线了,那么还有哪些精彩的活动?哪些新的内容呢?相信不少的玩家 ...

  9. fate服务器维护,活动维护公告(2020年4月1日 14时)

    我们将于以下时间,对游戏服务器实施临时维护, 在维护期间,将暂时无法进行游戏. 因此给各位御主带来不便,敬请谅解. 今后也请继续支持「Fate/Grand Order」. [维护时间] 2020年4月 ...

最新文章

  1. 基于多篇经典论文综述Attention模型方法(附源码)
  2. 树莓派python蓝牙_Fen9Pi-05.树莓派 UNO蓝牙通信
  3. java+object+graph,graphql-go:使用Object作为查询的输入参数
  4. base64链接转为地址php,php将图片链接转换为base64编码文件流
  5. 如何在excel中判断某一点在某一区域内_SEM优化师常用的Excel表格函数集合
  6. 爬虫——多线程糗事百科案例
  7. Spring的注解形式:@Repository、@Service、@Controller
  8. Poj 1006 / OpenJudge 2977 1006 Biorhythms/生理周期
  9. Hyperledger Fabric 或 Composer的configtx.yaml配置文件解析
  10. mysql索引使用b_mysql索引的数据结构,为什么用b+树
  11. Java常用实现八种排序算法与代码实现
  12. 《数据科学》第二章自学报告
  13. 上级对下级用通知合适吗_“通知”是上级给下级的还是下级给上级的?
  14. 全数集结,云上相会 | 大势智慧2022新品发布会改为线上举行
  15. 【转型JAVA CSS 基础day02】
  16. [附源码]计算机毕业设计Python+uniapp基于Android的自来水收费系统3e359(程序+源码+LW+远程部署)
  17. 找不到php软件包无法卸载,为什么有些软件卸载不了怎么办
  18. UDP FLood拒绝服务攻击
  19. html鼠标滑过带音效,html5 + css3 带音效下拉菜单的实现
  20. android和harmonyos对比,HarmonyOS和Android深度对比

热门文章

  1. 乐鑫Esp32学习之旅28 安信可 ESP32-Cam 摄像头开发板二次开发 C SDK编程,实现MQTT远程拍照传输到私有服务器。(附带源码)
  2. n918st能刷Android5吗?,中兴N918st(V5S 双4G版)一键救砖教程,轻松刷回官方系统
  3. 编码规范可能只是一块遮羞的破布。。。
  4. python语言中整型对应的英文是什么-12.Python数值类型(整形、浮点型和复数)及其用法...
  5. margin系列之百分比
  6. mysql服务端执行sql_服务器执行MySQL耗时问题解决全过程
  7. 国内cPanel空间试用手记
  8. 网络爬虫爬取b站励志弹幕并生成词云(精心笔记总结)!
  9. 《魔童降世》影评——从封神演义谈到宿命
  10. windows8 linux双系统,win7或win8、win8.1系统下安装ubuntu实现双系统图文教程