千家信息网

Java如何删除字符串中的所有相邻重复项

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍了Java如何删除字符串中的所有相邻重复项的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java如何删除字符串中的所有相邻重复项文章都会有所收获,下面我们
千家信息网最后更新 2026年11月01日Java如何删除字符串中的所有相邻重复项

这篇文章主要介绍了Java如何删除字符串中的所有相邻重复项的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java如何删除字符串中的所有相邻重复项文章都会有所收获,下面我们一起来看看吧。

算法:

栈一个比较常用的场景就是对字符串的操作,比如去重,退格,字符串表示的路径等,操作往往比较简单。

1.先把最为条件判断的字符串入栈2.根据新到来的元素判断要不要出栈3.最为比较的元素往往存在栈内,比较的时候,  有时候比较栈顶元素,有时候整个栈都要比较

题目1: 删除字符串中的所有相邻重复项

代码实现:

func removeDuplicates(S string) string {    ss := []byte(S)    var stacks []byte    for i := 0; i< len(ss);i++ {        if len(stacks) != 0 {            j:= len(stacks)-1            if ss[i] == stacks[j]{ // 与栈顶元素相同的话,删除栈内数据并且也不入栈                stacks = stacks[:j]                continue            }           }         stacks = append(stacks,ss[i])// 其他情况都入栈    }    return string(stacks)}/*栈的使用,先入栈,后面的元素与栈顶元素相同,出栈并且新元素不入栈。其他场景都入栈。*/

题目2: 比较含退格的字符串

代码实现:

func backspaceCompare(S string, T string) bool {    s := getStack(S)    t := getStack(T)    return s == t}func getStack(S string) string {    ss := []byte(S)    var stacks []byte    for i:=0;i 0 { // 注意 "#abc"这种#在最前面的情况                stacks = stacks[:len(stacks)-1]            }        }    }    return string(stacks)}

题目3:简化路径

代码实现:

import "strings"func simplifyPath(path string) string {    tmps := strings.Split(path,"/")    var paths []string    for _,s:=range tmps {        if len(s) != 0{            paths = append(paths,s)         }    }    // fmt.Println("name",paths)    var stacks []string    for i:=0;i
if paths[i]==".." { if len(stacks) > 0{ stacks=stacks[:len(stacks)-1] } continue } if paths[i]!="."{ stacks=append(stacks,paths[i]) } } // fmt.Println("name",stacks,len(stacks)) resStr :="" for idx,s:=range stacks { resStr += s if idx != len(stacks)-1{ resStr += "/" } }
return "/"+resStr}

关于"Java如何删除字符串中的所有相邻重复项"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"Java如何删除字符串中的所有相邻重复项"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

字符 字符串 元素 代码 知识 题目 相同 内容 场景 情况 最为 有时候 篇文章 路径 价值 就是 常用 操作简单 数据 文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网络科技 喔噻互联网科技有限公司 广州万易互联网科技有限公司 互联网金融监管科技数据 互联网科技有限公司经营范围 麻工互联网科技 北京互联网科技 唐信互联网科技 安徽鑫晟辉互联网科技 互联网女皇 腾讯科技 成都仁贤领冠互联网科技有限公司 科技赋能互联网健康 哈尔滨新华互联网科技学院 互联网科技商业 畅思互联网科技 国大互联网教育科技有限公司薪资 广东鹅鹅鹅互联网科技有限公司 互联网科技创业计划的风险分析 宁波允成互联网科技有限公司 高科技和互联网的现代国家 广东万易互联网科技有限公司惠州分公司 互联网科技公司发展 齐家互联网科技 紫鲸互联网科技 南平创想时代互联网科技有限公司 互联网科技如何创业 徐州市互联网科技有限公司 工业互联网科技创业 北京军民互联网科技公司 科技互联网专业工作会议发言稿
0