
剑指offer
程序员小老九
本人不是聪明的人,但是够努力。
科研或是搞研究其实是细致的活儿,马虎不得。
展开
-
剑指offer-----回溯和其他
和为S的连续正数序列题目:小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!想: 先想,不急于做题已...原创 2019-07-18 11:02:08 · 151 阅读 · 0 评论 -
剑指offer-----Python------二叉搜索树
尊重知识产权:百度百科: 二叉搜索树二叉查找树(Binary Search Tree),又叫二叉搜索树。它或者是一颗空树,或者具有以下性质的二叉树:若它的左子树不空,则左子树上所有节点的值均小于它的根节点;若它的右子树不空,则右子树上所有节点的值均大于它的根节点。它的左右子树也分别为二叉搜索树。二叉搜索树的后序遍历序列题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如...原创 2019-07-16 20:53:19 · 87 阅读 · 0 评论 -
数据结构-----剑指offer----二叉树系列
重建二叉树题目:输入某二叉树的前序遍历和中序遍历,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。算法:找根节点递归注意要求:返回的是根节点# -*- coding:utf-8 -*-# class TreeNode:# ...原创 2019-07-16 20:52:36 · 118 阅读 · 0 评论 -
数据结构之树----Python
尊重知识产权常见数据结构(二) - 树(二叉树,红黑树,B树)漫画:什么是红黑树?二叉树的Python实现python实现二叉树python创建以及遍历二叉树二叉树基础知识+Python实现 这个博客很好的相对于二叉树,红黑树、B树是比较困难的。所以对于红黑树、B树,这里可能只是简单的介绍,不做深入(主要是我还理解的不是那么,嗯,你懂的)。树什么是树? 树(Tree)是n(...原创 2019-07-16 20:50:46 · 221 阅读 · 0 评论 -
剑指Offer ---- Python-----链表系类
从尾到头打印链表题目: 输入一个链表,返回一个反序的链表。比如:1---->2---->3----->4 4----->3----->2----->1这其实是先进后出啊,这是栈的基本形式。每经过一个节点的时候,把该结点放到一个栈中。当遍历完整个链表后,再从栈顶开始逐个输出结点的值,给一个新的链表结构,这样链表就实现了反转。class...原创 2019-07-16 20:38:24 · 121 阅读 · 0 评论 -
数据结构----栈和队列----Python
栈我们知道,顺序表呢在Python中可以看作list和tuple。仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。作者:yongxinz链接:https://juejin.im...原创 2019-07-16 20:30:55 · 106 阅读 · 0 评论 -
数据结构之双向链表----Python
双向链表双向链表是指节点有三部分,数据、前向指针和后向指针。简单的图示可以参考看图轻松理解数据结构与算法系列(双向链表)作者:程序员老九掘金:https://juejin.im/post/5d1365c7e51d4510a73280f6来源:请关注我的掘金博客#定义一个节点类class Node: def __init__(self,dataval): self.d...原创 2019-07-16 19:56:34 · 189 阅读 · 0 评论 -
数据结构----链表之单向循环链表---Python
作者:程序员老九掘金:https://juejin.im/post/5d132d91e51d4550a629b2ad来源:请关注我的掘金博客循环是什么呢?圆就可以看作是一个循环。直接上一个示意图吧由图可以看出来,就是尾节点指针指向了头节点。公式:#定义一个节点类class Node(object): def __init__(self, dataval): s...原创 2019-07-16 15:34:20 · 138 阅读 · 0 评论 -
数据结构----链表系列----单向链表---Python
数据结构----单向链表(linked list)作者:程序员老九掘金:https://juejin.im/post/5d132d91e51d4550a629b2ad来源:请关注我的掘金博客基础我们知道什么是list,但是这不是链表。链表是由一系列的节点(Node)实现的,节点呢有至少两部分,一是数据,而是指向下一个节点的指针,如果没有指向,则指针指向Null。创建链表链表...原创 2019-07-16 15:28:23 · 193 阅读 · 0 评论 -
剑指Offer----递归-----Python
尊重知识产权:掘金—程序员吴师兄: 看动画轻松理解「递归」与「动态规划」人们往往习惯了平铺直叙的思维方式,所以递归与动态规划这种带循环概念的比较绕,相对难理解。什么是递归先下定义:递归算法是一种直接或者间接调用自身函数或者方法的算法。通俗来说,递归算法的实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。它有如下特点:一个问题的解可以分解为几个子问题的解...转载 2019-07-18 11:05:26 · 160 阅读 · 0 评论 -
递归与动态规划
尊重知识产权掘金—程序员吴先生 [看动画轻松理解「递归」与「动态规划」]https://juejin.im/post/5c2308abf265da615304ce41#heading-8)上一篇已经讲过递归 了, 现在我们重点介绍动态规划什么是动态规划呢?介绍动态规划之前先介绍一下分治策略(Divide and Conquer)。分治策略将原问题分解为若干个规模较小但类似于原问题的子问...原创 2019-07-16 21:07:11 · 132 阅读 · 0 评论