【golang】rune

news2025/7/15 12:43:24

一、背景

  1. 来看下2023.1.11的每日一题,是个简单题
    2283. 判断一个数的数字计数是否等于数位的值
  2. 几乎都有思路,先遍历一遍把数存在map中,第二次遍历直接判断就可以。

二、解答

  1. 我的解答(很久不写代码了)
    • 开始想着map的key是rune,但是调试的时候发现不对应,就想着转化为数字,就直接使用库函数strconv.Atoi。包括下面判断的时候也是一样。
func digitCount(num string) bool {
	digitMap := map[int]int{}
	for _, i := range num {
		a, err := strconv.Atoi(string(i))
		if err != nil {
			return false
		}
		digitMap[a]++
	}
	// 判断
	for i := 0; i < len(num); i++ {
		b, err := strconv.Atoi(string(num[i]))
		if err != nil {
			return false
		}
		if digitMap[i] != b {
			return false
		}
	}
	return true
}
  1. 官方解答
    • 使用rune作为key。
    • c-‘0’ 将字符串转化为数字
    • 判断的时候使用的for range循环。也使用了c-‘0’转化为数字。
func digitCount(num string) bool {
 cnt := map[rune]int{}
    for _, c := range num {
        cnt[c-'0']++
    }
    for i, c := range num {
        if cnt[rune(i)] != int(c-'0') {
            return false
        }
    }
    return true
}
  1. 比较
    在这里插入图片描述

三、总结

  1. byte 等同于int8,常用来处理ascii字符
  2. rune 等同于int32,常用来处理unicode或utf-8字符
  3. 可以使用字符±来巧妙的转化为数字

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/155382.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

autoCell:用于scRNA-seq的分析工具

目录简介引言相关工作贡献数据集和对比方法autoCell高斯混合模型图嵌入结果插补去噪后轨迹分析潜在特征捕获细胞病理学发现细胞类型特异性分子网络简介 动机&#xff1a;scRNA-seq使研究人员能够以单细胞分辨率研究基因表达。然而&#xff0c;由dropout引起的噪声可能会妨碍精…

mac快速配置iterm2

文章目录安装 iterm2设置为默认终端安装 oh-my-zsh 设置默认 shell查看 shell 有几种安装 oh-my-zsh设置默认 shell配置主题安装插件安装高亮插件设置快捷键安装 iterm2 自行官网下载 iterm2 设置为默认终端 Mac 默认终端即“终端”&#xff0c;我们可以把好用的 iterm2 设置…

Pytorch复习笔记--导出Onnx模型为动态输入和静态输入

目录 1--动态输入和静态输入 2--Pytorch API 3--完整代码演示 4--模型可视化 5--测试动态导出的Onnx模型 1--动态输入和静态输入 当使用 Pytorch 将网络导出为 Onnx 模型格式时&#xff0c;可以导出为动态输入和静态输入两种方式。动态输入即模型输入数据的部分维度是动态…

Elasticsearch:运用 Go 语言实现 Elasticsearch 搜索 - 8.x

在我之前的文章 “Elasticsearch&#xff1a;Go 客户端简介 - 8.x”&#xff0c;我对 Elasticsearch golang 客户端做了一个简单的介绍。在今天的这篇文章中&#xff0c;我将详细介绍如何使用这个客户端来一步一步地连接到 Elasticsearch&#xff0c;进而创建索引&#xff0c;搜…

流程编辑器bpmnjs的改造1:设计器外观和布局

重新设计页面&#xff0c;弄一个比较规范的设计器外观和布局&#xff0c;bpmnjs.css加入如下的代码&#xff1a;/* Frame CSS */html,body{width:100%;height:100%}.toolsBar{position:fixed;width:100%;height:40px;background-color:#FFF; border-bottom:1px solid #E1E1E1;d…

Linux安装Docker完整详细教程

目录 Docker及系统版本 Docker的自动化安装 Docker的手动安装&#xff08;CentOS7&#xff09; 1.1 卸载历史版本的Docker 1.2 安装依赖包 1.3 更新本地镜像源(也可以叫做&#xff1a;设置源仓库) 1.4 Docker安装 1.5 配置镜像加速 Docker启动 删除Docker Docker其…

连接池PgBouncer部署与踩坑实践

安装 可以直接使用 yum install pgbouncer 安装&#xff08;rpm管理的是1.14版本&#xff09; 或者在http://www.pgbouncer.org/downloads/ 下载最新的tat.gz包 解压出来进入目录&#xff0c;通过 ./configure --prefix/home/pgbouncermake & make install 安装&…

01等概率发生器、随机函数、对数器

1.数据结构 数据结构:是由连续结构、跳转结构或者连续加跳转(可能有多个叉)结构组成 数据结构是很多算法得以进行的载体 数组&#xff1a;便于寻址不便于删增数据&#xff08;需要不断移动数据&#xff0c;如果不动可能就不是连续结构&#xff09; 链表&#xff08;跳转结构…

jupyter notebook 暗黑模式新方法

1 直接浏览器采用暗黑模式 &#xff08;1&#xff09;首先我们打开谷歌浏览器&#xff0c;在浏览器地址栏中输入“chrome://flags”然后按下回车键。 &#xff08;2&#xff09;之后我们会进入谷歌浏览器的实验室页面&#xff0c;在页面左上方的搜索框中输入“enable-force-…

DocuWare客户案例——温德姆镇使用 DocuWare Cloud 改善市民服务

DocuWare客户案例——温德姆镇使用 DocuWare Cloud 改善市民服务 新冠疫情刚开始时&#xff0c;州和地方政府除了发挥传统作用以外&#xff0c;还要负责遏制疫情的关键措施。税收和联邦援助的收入没有增加&#xff0c;跟不上这一新职责的需求。采用减轻管理负担的技术是节省资源…

2022十大边缘计算开源项目

随着“开源”被纳入“十四五”规划发展纲要&#xff0c;“支持数字技术开源社区等创新联合体发展&#xff0c;完善开源知识产权和法律体系&#xff0c;鼓励企业开放软件源代码、硬件设计和应用服务”。开源发展按下了加速键&#xff01; 开源软件生态蓬勃发展&#xff0c;边缘…

Internet结构和ISP

目录 1. ISP / IXP / ICP 定义 2. 网络连接宏观结构 3. 网络连接层级结构 4. ISP 连接方式 1. ISP / IXP / ICP 定义 ISP&#xff1a;Internet Service Provider&#xff0c;即互联网服务提供商。主要为用户提供互联网接入业务、信息业务的运营商&#xff0c;如移动和电信等。 …

数据结构学习之栈

这里写目录标题栈的定义与性质栈的实现栈的定义栈的功能栈的创建入栈出栈栈顶判断栈为空得到栈的个数栈的销毁栈的定义与性质 第一个问题&#xff1a;什么是栈&#xff1f; 栈的定义是&#xff1a; 一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。…

【从零开始学习深度学习】45. Pytorch迁移学习微调方法实战:使用微调技术进行2分类图片热狗识别模型训练【含源码与数据集】

通常为了使模型的预测精度达到较高的标准&#xff0c;需要收集十分庞大的数据集来进行模型训练。一种比较巧妙解决该问题的办法是应用迁移学习&#xff08;transfer learning&#xff09;&#xff0c;将从某个已有的数据集学到的知识迁移到目标数据集上。例如&#xff0c;假如我…

微信小程序安装 Vant 组件库与API Promise组件库并实现简单的增删改查

在项目内右键空白处选择在外部终端打开2、在终端窗口输入 npm init -y,创建package-lock.jsonnpm init -y3、在终端输入npm i vant/weapp1.3.3 -S --production&#xff0c;创建node_modules文件夹npm i vant/weapp1.3.3 -S --production4、详情&#xff0d;本地设置&#xff0…

Vue2.0开发之——Vue组件-组件的实例对象(36)

一 概述 浏览器无法直接解析Vue文件package.json中的’vue-template-compiler’将vue结尾的文件解析为js文件交给浏览器处理Count组件实例对象 二 浏览器无法直接解析Vue文件 将Vue文件拖放到浏览器中无法直接显示 三 package.json中的’vue-template-compiler’将vue结尾的文…

软件著作权登记指南

一、什么是计算机软件《计算机软件保护条例》第二条、第三条规定&#xff0c;本条例所称计算机软件&#xff08;以下简称软件&#xff09;&#xff0c;是指计算机程序及其有关文档&#xff1b;&#xff08;一&#xff09;计算机程序&#xff0c;是指为了得到某种结果而可以由计…

第13章 Token的Postman、Swagger和Vue调试

1 准备工作 1.1 WebApi.Controllers.JwtSettingModel namespace WebApi.Test { /// <summary> /// 【Jwt设置模型--纪录】 /// <remarks> /// 摘要&#xff1a; /// 通过该纪录中的属性成员实例存储“AppSettings.json”文件中的Jwt相关设置数据&#xff0…

java应用程序多级缓存架构

多级缓存架构 一级缓存&#xff1a;OpenResty—Lua—Redis 二级缓存&#xff1a;Nginx proxy-cache 三级缓存&#xff1a;Redis 使用OpenResty lua脚本访问redis proxy-cache 缓存注解 <!--依赖--> <dependency><groupId>org.springframework.boot</gr…

最新研究发现:天然海绵含有抑制Omicron变体感染的天然化合物

本文原文首发于2023年1月9日E-LIFESTYLE &#xff08;阅读时间4分钟&#xff09; 附标题&#xff1a;通过研究370多种来自植物、真菌和海绵等天然来源的化合物&#xff0c;寻找可用于治疗新冠肺炎的新抗病毒药物&#xff0c;用这些天然化合物制成的溶液中沐浴人类被SARS-CoV-2感…