LeetCode思路(二):590、589、700、905、627、961、933、929

590. N叉树的后序遍历

分析

1)递归调用,退出条件:遍历到叶节点,对应实现是子节点为0

2)如果是叶结点,则直接将值塞入输出的vector

3)如果是分枝结点,则在做完叶结点之后,将值塞入输出vector

 

589. N叉树的前序遍历

分析

1)递归调用,退出条件:遍历到根节点,对应的实现是根节点为空

2)先将当前点的val塞入输出的vector

3)再遍历其子节点,调用同样方法

 

700. 二叉搜索树中的搜索

分析

1)递归调用,退出条件:找到key_val对应的点,即退出,对应实现就是指向key_val值的全局变量指针不为NULL

2)需要定义一个全局变量,局部变量要使用指向指针的指针

3)如果root->val大于key_val,则使用左树遍历

4)如果root->val小于key_val,则使用右树遍历

 

905. 按奇偶排序数组

分析

1)类似快速排序的交换算法

2)前后两个坐标,然后一次遍历

3)前坐标++,找到奇数位

4)后坐标--,找到偶数位

5)奇偶交换,直到前后坐标相等

 

627. 交换工资(SQL)

update、set以及case关键字的使用

 

961. 重复 N 次的元素

分析

使用一个map来记录元素次数,涉及:map遍历、key查找、value修改

 

933. 最近的请求次数

分析

1)使用vector来记录所有的记录

2)由于时间肯定包含当前时间,所以其实际是为了找到不包含的个数

3)使用总的个数-不包含的个数

 

929. 独特的电子邮件地址

分析

1)字符串相关方法的使用,包括find

2)string对象+运算符的使用

3)使用set对象来记录,插入元素使用insert方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值