上一页 1 2 3 4 5 6 ··· 11 下一页
摘要: 本文记录了关于排列的三道算法题目,相对来说有一定的难度,特别是求下一个排列和全排列中交换递归的算法思想,可以把其作为一个相对固定的思路理解记忆,同时,我们也看到了回溯和递归思想在其中的应用。 阅读全文
posted @ 2020-03-23 16:14 gzshan 阅读(730) 评论(0) 推荐(0)
摘要: 这三道关于求下一个更大元素的题目,首先需要很好的对题意进行理解,理清题目真正含义是关键,然后再解题思路中我们主要用到的是单调栈的思想,也体现了栈的妙用,而第三题于下一个排列联系起来,是很有代表性的三道算法题。 阅读全文
posted @ 2020-03-22 22:22 gzshan 阅读(1941) 评论(0) 推荐(1)
摘要: 对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。两道题分别针对二叉搜索树和普通的二叉树实现对最近公共祖先的查找。 阅读全文
posted @ 2020-03-21 19:35 gzshan 阅读(286) 评论(0) 推荐(0)
摘要: 只出现一次的数字这三道题,主要涉及到的是位运算的相应问题,特别是异或运算和移位运算的巧妙应用,位运算相对理解起来有一定的难度,需要深入理解。 阅读全文
posted @ 2020-03-20 21:55 gzshan 阅读(6659) 评论(0) 推荐(0)
摘要: 前面我们依次整理了链表反转、字符串反转及其相应的衍生题目,而整数反转可以转化为字符串问题,也可以单独通过运算实现,主要是注意整数存在溢出的问题。 阅读全文
posted @ 2020-03-19 23:06 gzshan 阅读(203) 评论(0) 推荐(0)
摘要: 本文总结了关于字符串反转的七道题目,相对来说比较简单,但是这是字符串类题目的基础,特别是左旋转字符串和反转单词序列两题体现了字符串反转的妙用。 阅读全文
posted @ 2020-03-18 18:18 gzshan 阅读(1201) 评论(0) 推荐(0)
摘要: 三道题以反转链表为基础,层层递进,是链表类题目中的典型问题,其主要的核心在于理清楚每一个指针的变化情况,同时要时刻注意头结点的使用和防止空指针。 阅读全文
posted @ 2020-03-03 00:53 gzshan 阅读(356) 评论(0) 推荐(0)
摘要: 三题都以分发糖果为背景,前两题比较简单,特别是第三题从前往后和从后往前进行两次动态规划的思想,有眼前一亮的感觉,非常巧妙,值得借鉴和思考。 阅读全文
posted @ 2020-03-02 21:59 gzshan 阅读(3312) 评论(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的三段,此时得到的最大乘积是18。 阅读全文
posted @ 2020-02-10 18:09 gzshan 阅读(237) 评论(0) 推荐(0)
摘要: 本文转自CSDN博客https://blog.csdn.net/csxypr/article/details/92378336,介绍了java中String、StringBuffer、StringBuilder的不同。 阅读全文
posted @ 2020-02-05 20:06 gzshan 阅读(198) 评论(0) 推荐(0)
摘要: 本系列博客是LeetCode刷题笔记。打家劫舍(House Robber)是LeetCode上比较典型的一个题目,涉及三道题,求在不触动警报装置的情况下,能够偷窃到的最高金额,主要解题思想是动态规划,将三道题依次进行记录。 阅读全文
posted @ 2019-07-15 12:13 gzshan 阅读(7987) 评论(0) 推荐(0)
摘要: 二叉树是非线性结构,每个结点会有零个、一个或两个孩子结点,一个二叉树的遍历序列不能决定一棵二叉树,但某些不同的遍历序列组合可以惟一确定一棵二叉树。给定一棵二叉树的前序(后序)遍历序列和中序遍历序列可以惟一确定一棵二叉树的结构。 阅读全文
posted @ 2019-07-14 20:25 gzshan 阅读(4242) 评论(0) 推荐(1)
摘要: 二叉树的层序遍历(也叫广度优先遍历)的要求是:按二叉树的层序次序(即从根结点层至叶结点层),同一层中按先左子树再右子树的次序遍历二叉树。层次遍历衍生出的问题有:按行打印、之字形打印、左右视图等等,主要思想是借助队列实现。 阅读全文
posted @ 2019-07-12 15:41 gzshan 阅读(1235) 评论(0) 推荐(0)
摘要: 通过前面对map端、reduce端以及整个shuffle端工作流程的介绍,我们已经了解了MapReduce的并行运算模型,基本可以使用MapReduce进行编程,那么MapRecude究竟是如何执行的,从map到shuffle,再到reduce的这一套完整的计算过程是如何调度的呢?这就是MapReduce的作业运行机制。 阅读全文
posted @ 2019-07-11 15:24 gzshan 阅读(756) 评论(0) 推荐(0)
摘要: MapReduce主要用于面向大规模数据集的并行计算,需要重点了解MapReduce的并行编程模型和运行机制。MapReduce计算模型主要由三个阶段构成:Map、shuffle、Reduce。Map和Reduce操作需要我们自己定义相应Map类和Reduce类。而shuffle则是系统自动帮我们实现的,是MapReduce的“心脏”,是奇迹发生的地方。 阅读全文
posted @ 2019-07-10 09:49 gzshan 阅读(1897) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 11 下一页