上一页 1 2 3 4 5 6 7 ··· 13 下一页
摘要: 右值引用、移动语义和完美转发 23 std::move和std::forward只是一种强制类型转换 std::move会保留cv限定符号,但是会导致传入右值却执行拷贝操作。所以如果希望移动std ::move 的值,传值类型不能是const C++11引入了右值引用,但原有的模板无法转发左值,因此 阅读全文
posted @ 2020-03-10 01:24 甜酒果。 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 这段时间看完了这本书。。做了些书中的笔记。。 我只是选了自己理解或者觉得可能重要的部分。。 对我来说后面同步异步那里确实有点看不懂。。 建议书里代码跟着写写,会明白一点。 类型推断 01 模板类型推断机制 auto 推断的基础是 模板类型推断机制 所以T的类型推断是与 expr 和 ParamTyp 阅读全文
posted @ 2020-03-10 01:08 甜酒果。 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 我刷完剑指前前后后也差不多一周。有些比较难写的(二叉树和链表)是拖了几天的。 想着这个月把题解写完,帮助自己理解消化一下。 感觉剑指和之前的竞赛题差别还是很大,比较重视数据结构这一块吧,其实太难的地方没有多少。 每个题其实都有很多种解法,看看二周目能不能补上来。拖延症患者(X) 以下是目录导航。 1 阅读全文
posted @ 2020-03-07 00:02 甜酒果。 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 题目链接:序列化二叉树 题意: 请实现两个函数,分别用来序列化和反序列化二叉树 二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时 阅读全文
posted @ 2020-03-06 23:24 甜酒果。 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 题目链接:剪绳子 题意:给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得 阅读全文
posted @ 2020-03-06 22:57 甜酒果。 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 题目链接:机器人的运动范围 题意:地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格 阅读全文
posted @ 2020-03-06 21:51 甜酒果。 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题目链接:矩阵中的路径 题意:请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 矩阵中包含一条字符串"bcced"的路 阅读全文
posted @ 2020-03-06 21:45 甜酒果。 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 题目链接:滑动窗口的最大值 题意:给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下 阅读全文
posted @ 2020-03-05 23:58 甜酒果。 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目链接:数据流中的中位数 题意:如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读 阅读全文
posted @ 2020-03-05 23:39 甜酒果。 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题目链接:二叉搜索树的第k个结点 题意:给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。 题解:之前有讲过BST的性质,中序遍历就可以得到一个递增的序列。也就是第k小就用这个性质。 遍历左子树,如果在左子树中找到节点,返 阅读全文
posted @ 2020-03-05 23:36 甜酒果。 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 题目链接:把二叉树打印成多行 题意:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 题解:用一个队列,每层压入队列,再放入数组里。层序遍历。 代码: 1 /* 2 struct TreeNode { 3 int val; 4 struct TreeNode *left; 5 str 阅读全文
posted @ 2020-03-05 23:23 甜酒果。 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 题目链接:按之字形顺序打印二叉树 题意:请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 题解:层序遍历。只不过偶数层翻转一下顺序就能变成之字型。 代码: 1 /* 2 struct TreeNode { 阅读全文
posted @ 2020-03-05 23:20 甜酒果。 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 题目链接:对称的二叉树 题意:请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 题解:判断树的左子树右子树的节点值是否相等。且镜像对称,即左子树的左节点=右子树的右节点。递归即可。 代码: 1 /* 2 struct TreeNode { 阅读全文
posted @ 2020-03-05 23:17 甜酒果。 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 题目链接:二叉树的下一个结点 题意:给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 题解:中序遍历查找下一个节点。也是数据结构里的常见题。 当前节点如果有右子树,下一个节点是右子树最左节点。 当前节点如果没有右子 阅读全文
posted @ 2020-03-05 22:55 甜酒果。 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 题目链接:删除链表中重复的结点 题意:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 题解:感觉也是数据结构里的常见题。如果找到当前节点的重复节点,就找到它最后一个重复节点。 阅读全文
posted @ 2020-03-05 22:50 甜酒果。 阅读(171) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 13 下一页