Golang编程实现删除字符串中出现次数最少字符的方法

本文实例讲述了Golang编程实现删除字符串中出现次数最少字符的方法。分享给大家供大家参考,具体如下:

描述:

实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。

输入:

字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。

输出:

删除字符串中出现次数最少的字符后的字符串。

样例输入:

abcdd

样例输出:

dd

代码实现:

代码如下:

package huawei
import (
    "fmt"
)
func Test4Base() {
    s := "abcfbcca"
    result := deleteMinChars(s)
    fmt.Println(result)
}
func deleteMinChars(s string) string {
    countMap := make(map[rune]int, 0)
    //统计出现次数
    for _, v := range s {
        countMap[v]++
    }
    //查找最少次数
    var minCount int
    for _, v := range countMap {
        if minCount == 0 || v < minCount {
            minCount = v
        }
    }
    //删除字符串中出现次数为minCount的字符
    for i := len(s) - 1; i >= 0; i-- {
        if countMap[rune(s[i])] == minCount {
            s = s[:i] + s[i+1:]
        }
    }
    return s
}

希望本文所述对大家Go语言程序设计有所帮助。

(0)

相关推荐

  • golang实现unicode转换为字符串string的方法

    本文实例讲述了golang实现unicode转换为字符串string的方法.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import (     "bytes"     "encoding/binary"     "encoding/hex"     "fmt"     "strings" ) func main() {     str := `\u5bb6\u65cf

  • go语言通过zlib压缩数据的方法

    本文实例讲述了go语言通过zlib压缩数据的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main import (     "fmt"     "compress/zlib"     "bytes" ) func main() {     var input = []byte("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKsAAAAgCAYAA

  • Golang使用zlib压缩和解压缩字符串

    在python的时候就习惯使用zlib进行网页压缩. golang下同样使用zlib进行压缩解压缩.  zlib官方给出的方法很简单,这里权当一个补充. zlib.NewWriter() 只能传递 []byte类型数据.   NewWriterLevel 可以传递压缩的等级. package main import ( "bytes" "compress/zlib" "fmt" "io" ) func main() { var

  • Golang编程实现删除字符串中出现次数最少字符的方法

    本文实例讲述了Golang编程实现删除字符串中出现次数最少字符的方法.分享给大家供大家参考,具体如下: 描述: 实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除.输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序. 输入: 字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节. 输出: 删除字符串中出现次数最少的字符后的字符串. 样例输入: abcdd 样例输出: dd 代码实现: 复制代码 代码如下: package huawei impo

  • C#基于正则表达式删除字符串中数字或非数字的方法

    本文实例讲述了C#基于正则表达式删除字符串中数字或非数字的方法.分享给大家供大家参考,具体如下: /// 去掉字符串中的数字 public static string RemoveNumber(string key) { return Regex.Replace(key, @"\d", ""); } //去掉字符串中的非数字 public static string RemoveNotNumber(string key) { return Regex.Replace

  • php使用substr()和strpos()联合查找字符串中某一特定字符的方法

    本文实例讲述了php使用substr()和strpos()联合查找字符串中某一特定字符的方法.分享给大家供大家参考.具体分析如下: 要求:在下面的字符串中查找双竖线前面的字符,大多数清空下使用explode()函数,但项目过程中使用了太多的explode(),所以找到了下面的方法. <?php $str="admin||46cc468df60c961d8da2326337c7aa58||0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,";

  • JS替换字符串中指定位置的字符(多种方法)

    假设有一个字符串,可能'Good Morning'也可能是'Hello World',我想将第五个字符,替换成'-'. 因为字符串虽然可以像数组那样获取某一位置字符'Hello World'[4],但是不能像数组那样直接修改某一位置的字符'Hello World'[4] = '-',这样是行不通的,但是可以把它切分成数组,修改某一位置的值,然后在合并回来. 方法1: const replaceStr1 = (str, index, char) => { const strAry = str.sp

  • php中删除字符串中最先出现某个字符的实现代码

    复制代码 代码如下: $a = "字符串";$c= explode("要删除的文字", $a, 2); $b = $c[0].$c[1]; explode (PHP 3, PHP 4, PHP 5) explode -- 使用一个字符串分割另一个字符串 描述 array explode ( string separator, string string [, int limit] ) 此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串

  • C++找出字符串中出现最多的字符和次数,时间复杂度小于O(n^2)

    已知字符串"aabbbcddddeeffffghijklmnopqrst"编程找出出现最多的字符和次数,要求时间复杂度小于O(n^2) /******************************************************** Copyright (C), 2016-2017, FileName: main9 Author: woniu201 Description:求字符串中出现次数最多的字符和次数 ******************************

  • 如何利用JavaScript获取字符串中重复次数最多的字符

    目录 题目 分析 使用对象 解题思路: 代码实现如下: 分析: 数组&指针 解题思路: 代码实现如下: 分析: 总结 想要保持自己的技术活力,最有效的手段就是通过不断地输入来提供足够的养分.我们也不必刻意追求高深的或者新鲜的知识点,通过对一个基础问题的全方位多维度解析,同样也会收获不小. 题目 假设有这么一道题目:请获取字符串 "bianchengsanmei,xuexiyouqudezhishi,jieshiyouqudepengyou,suzaoyouqudelinghun.&quo

  • PHP实现统计所有字符在字符串中出现次数的方法

    本文实例讲述了PHP实现统计所有字符在字符串中出现次数的方法.分享给大家供大家参考,具体如下: 先来看看效果: 算法: 循环一次字符串(本例的$str),把出现过的字符串记录在一个数组(如本例的$strRecord)内,如果已经此记录函数已经有,则不记录: 在每个字符串时,拿来与记录数组的值进行比较(本例的$strRecord[]['key']),如果记录里的某个值和这个字符串一样,就记录次数+1(本例的$strRecord[]['count']); 当然,设置一个变量,默认为false(如本例

  • PHP实现删除字符串中任何字符的函数

    本文实例讲述了PHP实现删除字符串中任何字符的函数.分享给大家供大家参考.具体如下: function delStr($start, $end, $orgenStr) { //读取要删除字符位置的前一部分字符串,并赋值给$temp //strpos读取字符第一次出现的位置 //substr读取指定开始与结束位置的子字符串 //echo $before."-". $last; $temp=$orgenStr; while(strpos($temp, $start) &&

  • JS简单判断字符在另一个字符串中出现次数的2种常用方法

    本文实例讲述了JS简单判断字符在另一个字符串中出现次数的2种常用方法.分享给大家供大家参考,具体如下: 经过搜索验证,提供两个方法. 1. 通过分割获取长度原理 var s = 'www.jb51.net'; var n = (s.split('.')).length-1; alert(n); //弹出2 2. 通过正则实现 function patch(re,s){ re=eval("/"+re+"/ig") return s.match(re).length;

随机推荐