《零基础Go语言算法实战》 【题目 1-15】字符串的比较

ops/2025/1/11 21:50:57/

《零基础Go语言算法实战》

 【题目 1-15】字符串的比较

请用 Go 语言实现一个算法,在不使用额外存储结构的条件下判断一个字符串的所有字

符是否全都相同,字符串的长度不能超过 3000。

【解答】

① 思路。

本题需要实现一个算法来判断字符串中的所有字符是否全都相同且不允许使用额外的存

储结构。如果允许使用额外的存储结构,则本题很好解。如果不允许,则可以使用 Go 语言

内置的方式实现。

② Go 语言实现。

通过 strings.Count() 函数判断,代码如下:

package main

import (

 "strings"

)

func isUniqueString1(s string) bool {

 if strings.Count(s, "") > 3000 {

 return false

 }

 for _, v := range s {

 if v > 127 {

 return false

 }

 if strings.Count(s, string(v)) > 1 {

 return false

 }

 }

 return true

}

通过 strings.Index() 函数和 strings.LastIndex() 函数判断索引是否存在,代码如下:

func isUniqueString2(s string) bool {

 if strings.Count(s, "") > 3000 {

 return false

 }

 for k, v := range s {

 if v > 127 {

 return false

 }

 if strings.Index(s, string(v)) != k {

 return false

 }

 }

 return true

}


http://www.ppmy.cn/ops/149256.html

相关文章

通过LlaMA-Factory导出的模型部署到Ollama

LlaMA-Factory导出的模型转换格式 仓库地址:https://github.com/ggerganov/llama.cpp git clone仓库之后,下载相关依赖: cd /opt/gl/llama.cpp-master/llama.cpp-master pip install -r requirements.txt转换大模型格式 转换为gguf格式 pyt…

iPhone升级iOS18黑屏?2025最新修复办法分享

你是不是迫不及待想试试苹果最新的 iOS 18 系统,结果升级过程或者升级后出现黑屏问题?最近不少用户反馈出iPhone升级最新iOS18出现黑屏问题。 不担心,这个问题其实很好解决,下面就给大家分享升级iOS18出现黑屏的问题和解决办法&am…

OpenCV相机标定与3D重建(53)解决 Perspective-3-Point (P3P) 问题函数solveP3P()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 根据 3 个 3D-2D 点对应关系找到物体的姿态。 cv::solveP3P 是 OpenCV 中的一个函数,用于解决 Perspective-3-Point (P3P) 问题。该问…

Redis 安装与 Spring Boot 集成指南

安装 Redis 和将其与 Spring Boot 应用集成是构建高效缓存解决方案的常见步骤。以下是详细的指南,帮助你在本地环境中安装 Redis,并在 Spring Boot 项目中配置和使用它。 1. 安装 Redis Windows 环境 Redis 官方并不直接支持 Windows,但你…

自动驾驶领域的基础模型综述

论文地址:Forging Vision Foundation Models for Autonomous Driving: Challenges, Methodologies, and Opportunitie 0 Abstract 论文摘要解读 这篇论文讨论了**大规模基础模型(Foundation Models)在人工智能(AI)领…

Jmeter全流程性能测试实战

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 项目背景: 我们的平台为全国某行业监控平台,经过3轮功能测试、接口测试后,98%的问题已经关闭,决定对省平台向…

uni-app无限级树形组件简单实现

因为项目一些数据需要树形展示&#xff0c;但是官网组件没有。现在简单封装一个组件在app中使用&#xff0c;可以无线嵌套&#xff0c;展开&#xff0c;收缩&#xff0c;获取子节点数据等。 简单效果 组件TreeData <template><view class"tree"><te…

分布式训练相关问题总结

1. 训练 大语言模型 存在哪些问题&#xff1f; 计算资源需求&#xff1a;训练大型语言模型需要大量的计算资源&#xff0c;包括高端 GPU、大量的内存和高速存储器。这可能限制了许多研究人员和组织的训练能力&#xff0c;因为这些资源通常很昂贵。数据需求&#xff1a;训练大型…