大模型平台后端开发(xiaomi)

文章目录

  • 算法题

算法题

1 三数之和 (注意去重的边界条件,过几天再刷几次)
2 长度最小的子数组 (代码随想录题目,滑动窗口)
3 用链表实现栈

package mainimport ("errors""fmt"
)// Node 定义链表节点
type Node struct {data intnext *Node
}// Stack 定义栈结构
type Stack struct {top *Node
}// NewStack 创建一个新的空栈
func NewStack() *Stack {return &Stack{nil}
}// Push 将元素压入栈顶
func (s *Stack) Push(data int) {s.top = &Node{data, s.top}
}// Pop 移除并返回栈顶元素
func (s *Stack) Pop() (int, error) {if s.top == nil {return 0, errors.New("stack is empty")}data := s.top.datas.top = s.top.nextreturn data, nil
}// Traverse 遍历栈中的元素
func (s *Stack) Traverse() {for current := s.top; current != nil; current = current.next {fmt.Print(current.data, " ")}fmt.Println()
}func main() {stack := NewStack()// 推送元素stack.Push(1)stack.Push(2)stack.Push(3)// 遍历栈stack.Traverse() // 输出: 3 2 1// 弹出元素data, err := stack.Pop()if err == nil {fmt.Println("Pop:", data) // 输出: Pop: 3}// 再次遍历栈stack.Traverse() // 输出: 2 1
}

4 基础计算器

//标题
//10以内正整数的加乘括号运算的求解
//
//题目描述
//9+((8*2+3)+1)*2=
func opsSort(ops string) int {switch ops {case "*":return 2case "+":return 1default:return 0}
}func calc(nums []int, ops []string) (nums1 []int, ops1 []string) {right, left := nums[len(nums)-1], nums[len(nums)-2]nums = nums[:len(nums)-2]op := ops[len(ops)-1]ops = ops[:len(ops)-1]switch op {case "+":nums = append(nums, left+right)case "*":nums = append(nums, left*right)}return nums, ops
}func MathResult(raw string) int {paramStack, opsStack := make([]int, 0), make([]string, 0)for _, s := range raw {str := string(s)n, err := strconv.Atoi(str)if err == nil {paramStack = append(paramStack, n)} else {switch string(s) {case "(":opsStack = append(opsStack, str)case ")":for opsStack[len(opsStack)-1] != "(" {paramStack, opsStack = calc(paramStack, opsStack)}opsStack = opsStack[:len(opsStack)-1]case "+", "*":for len(opsStack) > 0 && opsSort(str) <= opsSort(opsStack[len(opsStack)-1]) {paramStack, opsStack = calc(paramStack, opsStack)}opsStack = append(opsStack, str)}}}for len(opsStack) > 0 {paramStack, opsStack = calc(paramStack, opsStack)}return paramStack[0]
}func main() {var a stringfmt.Scan(&a)// a := "8*2+3"// a := "9+((8*2+3)+1)*2"// a := "2*(3+4)"fmt.Println(MathResult(a))
}

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

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

相关文章

记录计全支付切换到RabbitMQ时启动报错的问题

记录计全支付切换到RabbitMQ时启动报错的问题 首先在application.yml中切换到RabbitMQ配置安装RabbitMQ、Erlang、延时插件 rabbitmq_delayed_message_exchange&#xff0c;延迟插件必装 首先在application.yml中切换到RabbitMQ配置 # 第一处rabbitmq:addresses: 127.0.0.1:56…

java安全可控、安可、国产信创、国产化有哪些替代品【完整版本】100%兼容测试

安全可控、安可、 国产信创、国产化 java安全可控、安可、国产信创、国产化有哪些替代品【完整版本】100%兼容测试 系统、芯片、CPU、缓存、数据库、中间件、负载均衡、WEB服务器、防火墙、消息队列 开发 角色: 前端☑ 后端☑ 测试□ 数据库☑ 产品✅ UI设计□ 是否熟悉国产…

python 合并 pdf

from pypdf import PdfMergerpdfs [file1.pdf, file2.pdf, file3.pdf, file4.pdf]merger PdfMerger()for pdf in pdfs:merger.append(pdf)merger.write("result.pdf") merger.close()参考 https://stackoverflow.com/questions/3444645/merge-pdf-files

Winform自定义控件 —— 开关

在开始阅读本文之前&#xff0c;如果您有学习创建自定义控件库并在其他项目中引用的需求&#xff0c;请参考&#xff1a;在Visual Studio中创建自定义Winform控件库并在其他解决方案中引用https://blog.csdn.net/YMGogre/article/details/126508042 0、引言 由于 Winform 框架并…

深入探索Jetpack Compose:大前端式客户端开发实战

&#x1f482; 个人网站:【 摸鱼游戏】【神级代码资源网站】【工具大全】&#x1f91f; 一站式轻松构建小程序、Web网站、移动应用&#xff1a;&#x1f449;注册地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交…

(二)Jetpack Compose 布局模型

前文回顾 &#xff08;一&#xff09;Jetpack Compose 从入门到会写-CSDN博客 首先让我们回顾一下上一篇文章中里提到过几个问题&#xff1a; ComposeView的层级关系&#xff0c;互相嵌套存在的问题&#xff1f; 为什么Compose可以实现只测量一次&#xff1f; ComposeView和…

还拿B端设计经验,设计政务类系统,驴唇不对马嘴啦。

一、什么是政务类系统&#xff0c;涉及哪些领域 政务类系统是指用于政府机构或政府部门进行管理和运营的信息化系统。政务类系统的目的是提高政府工作效率、优化公共服务、加强政府与公民之间的互动和沟通。 政务类系统通常涵盖了各个方面的政府工作&#xff0c;包括但不限于以…

Media Encoder 2024 for Mac:专业的音视频编码神器

Media Encoder 2024 for Mac&#xff0c;作为Mac用户的专业音视频编码工具&#xff0c;凭借其强大的功能和用户友好的界面&#xff0c;深受专业人士的喜爱。它支持将各种格式的音视频素材转换为多种流行格式&#xff0c;如MP4、MOV、AVI等&#xff0c;满足不同的播放和发布需求…

计算机网络-DHCPv6基础

前面我们学习了IPv6地址可以通过手动配置、无状态自动配置、DHCPv6配置&#xff0c;这里简单学习下DHCPv6的知识点。 一、DHCPv6概述 DHCPv6 (Dynamic Host Configuration Protocol for IPv6) 是一种网络协议&#xff0c;设计用于IPv6网络环境中自动为网络设备分配必要的配置信…

NIOS II实现LED流水灯以及串口输出(DE2-115开发板)

NIOS II实现LED流水灯以及串口输出&#xff08;DE2-115开发板&#xff09; 前言什么是Qsys?什么是NIOSII?注意事项1、管脚配置2、配置NIOSII时的连接3、注意中断配置好后是这样的4、注意名称的配置5、设置双功能引脚 NIOS II的报错代码以及效果演示流水灯输出到电脑串口助手 …

笔记本电脑忘记开机密码怎么办?不需重装系统,重置开机密码

笔记本电脑忘记开机密码&#xff0c;重置开机密码方法 这里记录个方法&#xff0c;亲测有效。我的电脑版本是Windows11&#xff0c;21H2。 步骤1&#xff1a;打开疑难解答界面 方式1&#xff1a;按住Shift键&#xff0c;然后重启电脑。我电脑使用这个方法无效。 方式2&#…

盘点2024年自动猫砂盆品牌,哪个牌子自动猫砂盆比较好?

养猫之路漫漫&#xff0c;无论是新手还是老手&#xff0c;都需要细心照料猫咪的每一个需求。特别是在选择自动猫砂盆这个问题上&#xff0c;更是让人头疼不已。因为每只猫咪的喜好和习惯都不同&#xff0c;如果猫砂盆选得不对&#xff0c;猫咪可能会拒绝使用&#xff0c;导致家…

计算机视觉全系列实战教程:(一)概述

1.图像基本概念 &#xff08;1&#xff09;数字图像 在计算机视觉中&#xff0c;一般是以数字图像作为基础&#xff0c;所谓数字图像&#xff0c;就是一种以二维数组形式表示的图像&#xff0c;本质就是一个二维数组。 &#xff08;2&#xff09;图形 用数学规则产生的或具…

复制即用!纯htmlcss写的炫酷input输入框

一般我们写css样式都要用样式库&#xff0c;但是嫌麻烦&#xff0c;如果能找到现成的内容复制上去就很香了&#xff0c;下文是笔者觉得好看的纯html&css写的样式&#xff0c;可以直接复制到Vue等内&#xff0c;十分方便。 input组件 1&#xff09; 下面这个很推荐&#…

南京中科微Si24R2E:低功耗2.4GHz有源RFID SoC单发射芯片+7dBm可调输出功率,节省应用成本

Si24R2E是针对有源RFID市场设计的低功耗、高性能的2.4GHz标签系统的SoC单芯片&#xff0c;集成嵌入式2.4GHz无线射频发射器模块、128次可编程NVM存储器模块以及自动发射控制器模块等。 Si24R2E芯片主要特性&#xff1a; 工作在2.4GHz ISM频段 内置128次可编程NVM存储器 具有…

男士内裤有什么牌子比较好?公认男士内裤口碑最好的品牌

现在市面上关于男士内裤有着三角平角两种设计&#xff0c;而在材质方面还有莫代尔、纯棉、冰丝等等各种不同的材质分类&#xff0c;另外还有各种不同的男士内裤品牌。 所以大家在选男士内裤都觉得十分麻烦而且耗费时间&#xff0c;那么今天我就来给大家总结分析一下男士内裤应…

Python程序设计 内置模块 系统操作

系统操作 1. os 模块 Python 的 os 模块封装了常见的文件和目录操作&#xff0c;本文只列出部分常用的方法&#xff0c;更多的方法可以查看官方文档。 1.1 os.path常见用法 os.path 模块是跨平台的&#xff0c;即使不打算在平台之间移植自己的程序也应该用 os.path&#xf…

职责链模式

职责链模式 文章目录 职责链模式什么是职责链模式通过示例了解职责链模式 什么是职责链模式 职责链模式(Chain of Responsibility):使多个对象都有机会处理请求&#xff0c;从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链&#xff0c;并沿着这条链传递该请…

微软中国 AI 团队搬至美国?可解决家属签证

多位网友爆料称&#xff0c;微软中国数百名员工收到公司邮件&#xff0c;询问是否愿意迁移至美国、澳大利亚、爱尔兰等国家工作。公司将负责亲属签证问题&#xff0c;以Azure云平台的AI团队为主&#xff0c;员工需要在6月7日前给出答复。 有微软员工表示情况属实&#xff0c;这…

文本三剑客-awk

一、awk的介绍 1.1awk的简介 AWK 是一种处理文本文件的语言&#xff0c;是一个强大的文本分析工具 可以在无交互的模式下实现复杂的文本操作 相较于sed常作用于一整个行的处理&#xff0c;awk则比较倾向于一行当中分成数个字段来处理&#xff0c;因为awk相当适合小型的文本…