• DY
    2018-10-31
    虽然听得不是很懂,但还是很赞👍,有个初步了解😂
    
     4
  • Legolas
    2018-12-04
    多谢老师讲解,颇有收获。我有个疑问。

    适用贪心算法的场景必须是“子问题的最优解能够递推到最终问题的最优解”。

    这句话概念很容易理解,但是问题是当遇到一个问题的时候如果选择贪心算法,往往很容易陷入思维盲区,导致不那么容易看出 子问题的最优解到底能不能够递推到最终问题的最优解,比如短时间内没法举出反例,如何避免这种情况? 例如视频中的找硬币的问题,虽然已经知道正确解法应该用DP去做,但是确实有很长一段时间我一直误认为贪心算法是没问题的。
    展开

    作者回复: 经验,多怀疑? 一般来说都可以认为不太能简单贪心。

    
     1
  • 
    2018-11-25
    class Solution {
        public int majorityElement(int[] nums) {
             Map<Integer,Integer> map = new HashMap<Integer,Integer>();
            int n = nums.length;
            for(int num : nums) //统计每个元素出现的次数
            {
                Integer count = map.get(num);
                if(count == null)
                    count =1;
                else
                    count++;
                map.put(num,count);
                if(map.get(num) > n/2)
                    return num;
            }
            return 0;

        }
    }

    用暴力方法超时了
    展开
    
     1
  • Lywane
    2020-01-16
    适用贪心算法的场景必须是“子问题的最优解能够递推到最终问题的最优解”。

    老师,我怎么判断子问题最优解能不能递推最终问题最优解啊
    
    
  • 百里
    2018-12-26
    最优算法还有背包算法,怎么没有讲?
    
    
我们在线,来聊聊吧