![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
voidfaceless
这个作者很懒,什么都没留下…
展开
-
【Leetcode] 915.分割数组
题目给定一个数组 A,将其划分为两个不相交(没有公共元素)的连续子数组 left 和 right, 使得:left 中的每个元素都小于或等于 right 中的每个元素。left 和 right 都是非空的。left 要尽可能小。在完成这样的分组后返回 left 的长度。可以保证存在这样的划分方法。示例 1:输入:[5,0,3,8,6]输出:3解释:left = [5,0,3],...原创 2020-02-25 18:41:47 · 278 阅读 · 0 评论 -
【Leetcode】1129. 颜色交替的最短路径
题目在一个有向图中,节点分别标记为 0, 1, ..., n-1。这个图中的每条边不是红色就是蓝色,且存在自环或平行边。red_edges中的每一个 [i, j]对表示从节点i到节点j的红色有向边。类似地,blue_edges 中的每一个[i, j]对表示从节点 i 到节点j的蓝色有向边。返回长度为 n 的数组answer,其中 answer[X]是从节点0到节点X 的最短路径的长度,且路径...原创 2020-02-19 14:47:07 · 299 阅读 · 0 评论 -
【Leetcode】563. 二叉树的坡度
题目给定一个二叉树,计算整个树的坡度。一个树的节点的坡度定义即为,该节点左子树的结点之和和右子树结点之和的差的绝对值。空结点的的坡度是0。整个树的坡度就是其所有节点的坡度之和。示例:输入: 1 / \ 2 3输出: 1解释: 结点的坡度 2 : 0结点的坡度 3 : 0结点的坡度 1 : |2-3| = 1树的坡度 : 0 + 0 + 1 =...原创 2020-02-17 17:02:44 · 157 阅读 · 0 评论 -
【Leetcode】Leetcode 75.颜色分类
Leetcode 75.颜色分类题目:给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]进阶:一个直观的解决方...原创 2019-11-23 19:44:54 · 125 阅读 · 0 评论 -
剑指offer——树的子结构
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)递归思想,看每一个节点是否对应相当就好了。先判断B是不是当前节点的子树,不是再判断B是否是A的左子树的子树,然后B是否是A的左子树的子树。中间有几个注意的,如果A遍历完了,而B没完,说明B比A大,不是子树;如果A完了,B完了;如果A没完,B完了,同时所有节点都能对上,就说明B是A的子树。返回True...原创 2018-07-22 16:40:42 · 122 阅读 · 0 评论 -
剑指offer——合并链表
题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。其实这题考的是归并排序。很简单,贴出代码:# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.next = None...原创 2018-07-22 16:02:32 · 123 阅读 · 0 评论 -
最大堆、最大堆的应用及其python实现
堆是一个数组,它可以被看成一个近似的完全二叉树,树上的每一个节点对应数组的一个元素。除了最底层外,该树是完全充满的,而且是从左到右填充的。堆一般可以分为两种形式:最大堆和最小堆。最大堆是指,根节点的值大于其孩子节点的值;最小堆是指,根节点的值小于其孩子节点的值。A.length表示数组元素的个数,A.heap-size表示有多少个堆元素,left表示i节点的左节点,如下图所示,left =...原创 2018-07-26 16:54:52 · 4873 阅读 · 0 评论 -
机试——字符串匹配
题目描述题目标题:判断短字符串中的所有字符是否在长字符串中全部出现详细描述:接口说明原型:boolIsAllCharExist(char* pShortString,char* pLongString);输入参数: char* pShortString:短字符串 char* pLongString:长字符串 输入描述:输入两个字符串。第一个为短字符,第二个为长字符。输出描述:返回...原创 2018-07-10 09:39:22 · 321 阅读 · 0 评论 -
华为机试——记票统计
题目描述请实现接口:unsigned int AddCandidate (char* pCandidateName);功能:设置候选人姓名输入: char* pCandidateName 候选人姓名输出:无返回:输入值非法返回0,已经添加过返回0 ,添加成功返回1 Void Vote(char* pCandidateName);功能:投票输入: char* pCandidateName 候选人姓...原创 2018-07-09 21:36:51 · 545 阅读 · 0 评论 -
华为机试——表示数字
题目描述将一个字符中所有出现的数字前后加上符号“*”,其他字符保持不变 public static String MarkNum(String pInStr) { return null; }输入描述:输入一个字符串输出描述:字符中所有出现的数字前后加上符号“*”,其他字符保持不变示例1输入Jkdi234klowe90a3输出Jkdi*234*klowe*90*a*3*思路:前后如果分...原创 2018-07-09 11:12:15 · 342 阅读 · 0 评论 -
华为机试——找出字符串中第一个只出现一次的字符
题目描述找出字符串中第一个只出现一次的字符 输入描述:输入一个非空字符串输出描述:输出第一个只出现一次的字符,如果不存在输出-1示例1输入asdfasdfo输出o思路:利用string的count()函数即可实现def func(str1): for ss in str1: if(str1.count(ss)==1): return ss ...原创 2018-07-09 10:22:46 · 241 阅读 · 0 评论 -
华为机试——称砝码
题目描述现有一组砝码,重量互不相等,分别为m1,m2,m3…mn;每种砝码对应的数量为x1,x2,x3...xn。现在要用这些砝码去称物体的重量,问能称出多少中不同的重量。 注:称重重量包括0 方法原型:public static int fama(int n, int[] weight, int[] nums)输入描述:输入包含多组测试数据。对于每组测试数据:第一行:n --- 砝码数(...原创 2018-07-09 10:08:29 · 937 阅读 · 0 评论 -
python应聘(2)——容易采坑的round() 函数
Python round() 函数这个前段时间做华为在线编程题目时候遇到的坑,一直懒写,但是为了防止忘了,还是提前补上。题目贴在下面:https://www.nowcoder.com/practice/3ab09737afb645cc82c35d56a5ce802atpId=37&tqId=21230&tPage=1&rp=&ru=%2Fta%2Fhuawei&am...原创 2018-04-09 21:10:28 · 830 阅读 · 0 评论 -
剑指offer(4)
剑指offer(4)题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。二叉树有三种遍历方法,分别是:前序、中序、后序遍历。首先,我们看看前序、中序、后序遍历的特性: 前序遍历: 1原创 2017-08-15 20:36:33 · 283 阅读 · 0 评论