
数据结构
godop
这个作者很懒,什么都没留下…
展开
-
剑指offer 二叉搜索树的后序遍历序列
时间限制:1秒 空间限制:32768K 热度指数:139244原题:https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd?tpId=13&tqId=11176&rp=2&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking题目原创 2017-10-03 21:25:25 · 152 阅读 · 0 评论 -
112. Path Sum
Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.For example:Given the below binary tree and su原创 2018-01-27 21:10:26 · 121 阅读 · 0 评论 -
Leetoode之120. Triangle
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.For example, given the following triangle[ [2], [3,4], [6,5,7],...原创 2018-02-12 23:57:15 · 179 阅读 · 0 评论 -
剑指offer之栈的压入、弹出序列
时间限制:1秒 空间限制:32768K 热度指数:145390 本题知识点: 栈 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)...原创 2018-03-10 11:00:13 · 117 阅读 · 0 评论 -
剑指offer之二叉树的后序遍历序列
时间限制:1秒 空间限制:32768K 热度指数:166329 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。题解: 验证是否为二叉搜索树后续遍历,根据后序遍历的性质:根节点在序列最后,然后根据二叉搜索树的性质,左子树的值小于根节点,右节点的值大于根节点;再验证他的左子树,右子树,直到叶...原创 2018-03-10 17:36:44 · 385 阅读 · 0 评论 -
剑指offer之数组中出现超过一半的数字
题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。点击打开链接首先设置一个计数标签count=1,再设一个记数标签flag,令flag等于数组第一个数字;然后开始遍历数组,如果 数组中第i个数字 和flag相等,则count++;如...原创 2018-03-17 11:38:22 · 146 阅读 · 0 评论 -
剑指offer之丑数
题目描述把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。题目题解:由题意可知,只含有2、3和5的数是丑数,所以设a2,a3,a5分别记录将是哪个数字的*2,*3,*5倍,然后取最小的index=1,此时设a2=0,a3=0,a5=0,返回1;index=2,此时,分别用...原创 2018-03-18 16:29:41 · 124 阅读 · 0 评论 -
剑指offer之把数组排成最小的数
题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。题目链接题解:这题就是先取“最小”的符合条件的数字,最后取“最大”的那个数字;所以可直接sort排好序,再将int转换为string;当然并不是简单的sort,用附带第三个约束条件参数的sort;然后字符转换用了to...原创 2018-03-18 16:45:24 · 208 阅读 · 0 评论 -
leetcode之Longest Substring Without Repeating Characters
Given a string, find the length of the longest substring without repeating characters.Examples:Given "abcabcbb", the answer is "abc", which the length is 3.Given "bbbbb", the answer is "b", with the l...原创 2018-03-30 01:19:34 · 126 阅读 · 0 评论 -
leetcode之Median of Two Sorted Arrays
There are two sorted arrays nums1 and nums2 of size m and n respectively.Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).Example 1:nums1 = [1, 3]nums2...原创 2018-03-30 17:31:05 · 156 阅读 · 0 评论 -
leetcode之Longest Palindromic Substring
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.Example:Input: "babad"Output: "bab"Note: "aba" is also a valid answer. Example:I...原创 2018-04-09 21:49:25 · 141 阅读 · 0 评论 -
leetcode之ZigZag Conversion
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)P A H NA P L S I I G...原创 2018-04-12 12:54:57 · 162 阅读 · 0 评论 -
leetcode 111. Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.题意:求树的最小深度,和我们平常求的最大深度反了一下。最小深原创 2018-01-26 19:35:08 · 128 阅读 · 0 评论 -
110leetcode Balanced Binary Tree
Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never diffe原创 2018-01-25 19:32:50 · 126 阅读 · 0 评论 -
LeetCode之Construct Binary Tree from Preorder and Inorder Traversal
Given preorder and inorder traversal of a tree, construct the binary tree.题目意思:给定前序和中序遍历,构建一个二叉树思路:假设前序遍历的起始位置startPre,结束位置endPre,中序遍历:startIn,endIn由前序遍历和中序遍历,可以确定哪边是左子树,哪边是右子树。在前序遍历中对应中序遍历,首先确定原创 2018-01-07 11:54:17 · 161 阅读 · 0 评论 -
剑指offer 从上到下打印二叉树
时间限制:1秒 空间限制:32768K 热度指数:127879原题:https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&tPage=2&rp=2&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranki原创 2017-10-03 19:54:28 · 210 阅读 · 0 评论 -
剑指offer 顺时针打印矩阵
时间限制:1秒 空间限制:32768K 热度指数:169345题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.改题网址:https://www.nowc原创 2017-10-03 13:08:05 · 206 阅读 · 0 评论 -
剑指offer 二叉树的镜像
最近在刷剑指offer的题目,刚好碰到树,我比较薄弱的一环,将自己思路写出来和大家一起分享时间限制:1秒 空间限制:32768K 热度指数:98039题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5原创 2017-10-03 12:55:33 · 175 阅读 · 0 评论 -
剑指offer,二叉树中和为某一值的路径
题目描述输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。链接:https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&tPage=2&rp=2&ru=/ta/coding-inte原创 2017-10-18 14:46:53 · 226 阅读 · 0 评论 -
stl中set相关算法
stl一共提供了四种与set集合相关的算法,分别是并集,交集,差集,对称差集。四个算法都至少有四个参数,分别表现两个区间。以下程序测试四个set相关算法,欲使用它们,必须包含。#include#include#include#includeusing namespace std;template struct display{void operator()(原创 2017-10-20 16:39:44 · 564 阅读 · 0 评论 -
Quick Sort篇
Quick Sort是目前已知的最快的排序法,平均复杂度为O(NlogN),最坏的情况下将达O(N2)。不过(极类似median-of-three QuickSort的一种排序算法)可将最坏情况推进到O(logN)。早期的STL sort算法都是采用Quick Sort,SGI STl以采用IntroSort。Quick Sort算法可以叙述如下。假设S代表将被处理的序列:1、如果S的元素原创 2017-10-21 16:34:11 · 362 阅读 · 0 评论 -
剑指offer的最小k个数
题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,链接:https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf?tpId=13&tqId=11182&tPage=2&rp=2&ru=%2Fta%2Fcoding-intervie原创 2017-10-25 11:43:35 · 169 阅读 · 0 评论 -
剑指offer之求1+2+3+4+。。。+n
时间限制:1秒 空间限制:32768K 热度指数:68900题目描述求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。链接:https://www.nowcoder.com/practice/7a0da8fc483247ff8800059e12d7caf1?tpId=13&t原创 2017-12-01 15:16:36 · 277 阅读 · 0 评论 -
剑指offer之二叉树的下一个结点
时间限制:1秒 空间限制:32768K 热度指数:53602题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针struct TreeLinkNode { int val; struct TreeLinkNode *left; struct TreeLink原创 2017-12-10 20:40:18 · 130 阅读 · 0 评论 -
剑指offce之数组中只出现一次的数字
时间限制:1秒 空间限制:32768K 热度指数:86788本题知识点: 数组题目描述一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。题解:(废话:开始我自己用的是暴力求解,后面看到别人用位运算感觉差距好大;这里主要分享下位运算思路,也帮助自己更好的学习和理解吧)从题目看给出了两个重要信息,其余数字都出现两次(进行异或运算都会原创 2017-11-26 15:54:20 · 136 阅读 · 0 评论 -
剑指offer之和为S的连续正数序列
时间限制:1秒 空间限制:32768K 热度指数:81545题目描述小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续原创 2017-11-27 16:56:22 · 712 阅读 · 0 评论 -
今日头条2017后端工程师实习生笔试题第一题:最大映射
有 n 个字符串,每个字符串都是由 A-J 的大写字符构成。现在你将每个字符映射为一个 0-9 的数字,不同字符映射为不同的数字。这样每个字符串就可以看做一个整数,唯一的要求是这些整数必须是正整数且它们的字符串不能有前导零。现在问你怎样映射字符才能使得这些字符串表示的整数之和最大?输入描述:每组测试用例仅包含一组数据,每组数据第一行为一个正整数 n , 接下来有 n 行,每行一个长度不超过...原创 2018-08-22 22:30:03 · 884 阅读 · 0 评论