zoukankan      html  css  js  c++  java
  • 实现一个算法,寻找字符串中出现次数最少的、并且首次出现位置最前的字符 如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少)。并且比其他只出现一次的字符(如"d")首次出现的位置最靠前。

    实现一个算法,寻找字符串中出现次数最少的、并且首次出现位置最前的字符
    如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少)。并且比其他只出现一次的字符(如"d")首次出现的位置最靠前。

    空间换时间

    var str = 'ksafa;sldfkasddfklwewkelfeerueuruieo2dofjklksafa;sldfkasddfklwewkelfeerueuruieo2dofjkl'
    function findMinStr(str){
        if(str.length === 0){
            return;
        }
        var obj = {};
        var minStr = str[0];
        for(var i = 0 ;i  < str.length ; i ++){
            if(!obj[str[i]]){
                obj[str[i]] = 1;
            }else{
                obj[str[i]] ++;
            }
    
            // 当前最小值与当前值比较
            if(obj[minStr]>obj[str[i]]){
                minStr = str[i]
            }
    
        }
        // console.log(obj)
        // console.log(minStr)
        return minStr;
    }
    
    findMinStr(str)
  • 相关阅读:
    常见问题
    查询
    多对多关系
    prototype & __proto__
    new operator
    用户
    express.Router
    Express 应用生成器
    LeanCloud
    npm常用命令
  • 原文地址:https://www.cnblogs.com/aiyr/p/10107453.html
Copyright © 2011-2022 走看看