Java如何删除字符串中的所有相邻重复项
发表于:2025-01-29 作者:千家信息网编辑
千家信息网最后更新 2025年01月29日,这篇文章主要介绍了Java如何删除字符串中的所有相邻重复项的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java如何删除字符串中的所有相邻重复项文章都会有所收获,下面我们
千家信息网最后更新 2025年01月29日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;i0 { // 注意 "#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安全错误
数据库的锁怎样保障安全
软路由加nas服务器价格
创意网络技术服务有限公司
乡镇医院网络安全应急预案
低功耗家庭服务器
你怎样看待网络安全法
西安君悦网络技术有限公司
朗科科技能源互联网
报纸服务器
软件开发用服务器cpu
导致危害网络安全等后果的处以
星能双cpu服务器
元亨服务器
池州手机软件开发公司哪家好
软件开发实习报告2000字
能源互联网..金风科技
计算机网络技术的政策
网络安全工控系统
服务器维护怎么充话费
八卦数据库吐槽大会
重庆长寿配送生鲜软件开发
网络安全山东张敬
连接互联网的高科技产品
网络安全一项
镇海区技术刀片服务器售后服务
嘉兴网络安全专业
云南银行网络安全攻防竞赛
七日杀服务器时间流逝
绍兴通信网络技术电话
禄劝天气预报软件开发
电脑老是弹出检测服务器信息