zoukankan      html  css  js  c++  java
  • Day 68

    第538题:

    给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。来源:力扣(LeetCode)

    1、 二叉搜索树,可知它的中序遍历是升序的,那么它的中序遍历反过来就是一个降序的序列;

      而转换成累加树,就是将每个节点的值加上树里面所有比它大的值;

      那么遍历到第一个时,它是最大的,不需要加任何数,当遍历到后面的元素时,将前面累加的所有比它大的累加到这个元素内;

      最后就得到了最后的累加树。

      

    第506题:

    出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”("Gold Medal", "Silver Medal", "Bronze Medal")。来源:力扣(LeetCode)

    (注:分数越高的选手,排名越靠前。)

    1、对数组内的各个成绩进行大小判断,前三可以获得金银铜牌;

      我们需要先用哈希表记录下每个人成绩再原数组内的位置 ,然后对成绩进行排序;

      将res内对应的前三名的成绩下标对应的值改为金银铜牌,其他的成绩排名也加入数组res。

      

  • 相关阅读:
    树状数组和线段树
    N皇后问题(函数式编程与过程式)
    单例模式
    BitSet
    蓄水池抽样问题
    关于动态规划的一些感想
    53最大子序和
    5最长回文子串
    139单词拆分
    91.解码方法
  • 原文地址:https://www.cnblogs.com/liang-yi-/p/13708113.html
Copyright © 2011-2022 走看看