3 JLUspring

尚未进行身份认证

暂无相关简介

等级
TA的排名 8w+

Leetcode——563. 二叉树的坡度

/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */cla...

2020-04-24 10:18:32

Leetcode——653. 两数之和 IV - 输入 BST

题目传送门思路:遍历一下树(我这里用的层序遍历),然后将目标值k-当前节点的值所得到的差值存入unordered_set这个hashset,然后遍历的时候验证当前节点是否在hashset里面,如果存在的话说明这个节点就是之前期望的差值。/** * Definition for a binary tree node. * struct TreeNode { * int val;...

2020-04-23 09:10:40

Leetcode——606. 根据二叉树创建字符串

题目传送门/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; *...

2020-04-22 15:18:04

Leetcode——538. 把二叉搜索树转换为累加树

思路:类似于中序遍历但是是右子树->根节点->左子树这样来。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), le...

2020-04-21 16:00:51

Leetcode——501. 二叉搜索树中的众数

思路:中序遍历后对遍历得到的数组进行计数/排序。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), rig...

2020-04-20 10:14:51

Leetcode——108. 将有序数组转换为二叉搜索树

思路:中序遍历、递归/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} *...

2020-04-19 10:54:29

Leetcode——530. 二叉搜索树的最小绝对差

对于二叉搜索树,中序遍历得到的结果就是一个递增的数列/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), r...

2020-04-18 10:30:33

Leetcode——107. 二叉树的层次遍历 II

思路:1.递归/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }...

2020-04-17 10:54:20

Leetcode——572. 另一个树的子树

题目传送门思路:递归c++/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {...

2020-04-16 09:13:39

Leetcode——445. 两数相加 II

思路:利用栈来解决链表反转简洁版class Solution {public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { stack<int> s1, s2; while (l1) { s1.push(l1 -> val); ...

2020-04-14 10:10:16

Leetcode——437. 路径总和 III

思路:递归写法,用一个数组(python用链表)存储之前节点的值,然后对每个节点进行向前回溯。python# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# ...

2020-04-13 10:34:26

Leetcode——404. 左叶子之和

c++/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */...

2020-04-12 11:43:26

Leetcode——100. 相同的树

题目传送门思路就是递归比较,这里用python、c++两种语言写的,不得不说,python就是慢很多,我python 32ms超过80%,c++ 4ms超过60%。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNod...

2020-04-11 10:38:39

Leetcode——151. 翻转字符串里的单词

题目传送门最近开始转战python了,因为以后工作可能会用python比较多。还是提取熟悉一下python吧。之前一直用c++刷是认为用c++可以更加专注于算法本身,因为python的api实在是太强了!!!class Solution: def reverseWords(self, s: str) -> str: return " ".join(reversed...

2020-04-10 10:43:25

Leetcode——24. 两两交换链表中的节点

题目传送门/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListN...

2020-04-09 15:16:58

Leetcode——72. 编辑距离

题目传送门推荐看这个题解很精彩下面给出c++写法自顶向下class Solution {public: struct HashPair { size_t operator() (const pair<int, int> &a) const { return a.first * 1000007 + a.second; ...

2020-04-07 11:05:49

Leetcode——面试题 01.07. 旋转矩阵

题目传送门思路:先按对角线交换。后每一行以中间的点为对称轴交换。class Solution {public: void rotate(vector<vector<int>>& matrix) { int n=matrix.size(); for(int i=0;i<n;i++) {...

2020-04-07 11:02:53

Leetcode——8. 字符串转换整数 (atoi)

题目传送门思路一:就简单的面向过程但是要处理好边界问题比较费劲class Solution{public: int myAtoi(string str) { int strLength=str.length(); int i; for(i=0;i<strLength;i++) { ...

2020-04-03 16:13:57

Leetcode——289. 生命游戏

传送门复制原数组模拟class Solution {public: int index1[8]={1,1,1,0,0,-1,-1,-1}; int index2[8]={0,1,-1,1,-1,-1,0,1}; bool isLegal(int x,int y,int boundx,int boundy) { if(x<0||y<...

2020-04-02 11:26:29

Leetcode——912. 排序数组

题目传送门介绍两种方法,第一种就是直接调库,第二种是希尔排序。class Solution{public: vector<int> sortArray(vector<int>& nums) { sort(nums.begin(),nums.end()); return nums; }};class...

2020-03-31 09:09:05

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。