Go Rust解题——使用[ ]int 固定长度数组实现循环队列

Go Rust解题——使用[ ]int 固定长度数组实现循环队列,第1张

概述题目622.设计循环队列-力扣(LeetCode)题解rust设计循环队列设计循环队列-提交记录-力扣(LeetCode)go设计循环队列设计循环队列-提交记录-力扣(LeetCode)解题思路使用[]int固定长度数组实现循环队列注意保留一个空位,方便后续实现。长度是可选项。重点是is 题目

622. 设计循环队列 - 力扣(LeetCode)

题解

rust 设计循环队列
设计循环队列 - 提交记录 - 力扣(LeetCode)

go 设计循环队列
设计循环队列 - 提交记录 - 力扣(LeetCode)

解题思路

使用[ ]int 固定长度数组实现循环队列

注意保留一个空位,方便后续实现。长度 是可选项。重点是 isEmpty 和 isFull 两个函数的判断逻辑。代码
type MyCircularQueue struct {    head, Tail int    Queue []int    Length,size int}func Constructor(k int) MyCircularQueue {    return MyCircularQueue{        head:0,        Tail:0,        Queue: make([]int,k+1,k+1),        Length:0,        size: k+1,    }}func (this *MyCircularQueue) EnQueue(value int) bool {    if this.IsFull() {        return false    }    this.Queue[this.Tail]=  value    this.Tail = (this.Tail + 1 + this.size) % this.size    this.Length += 1    return true}func (this *MyCircularQueue) DeQueue() bool {    if this.IsEmpty() {        return false    }    this.head = (this.head+1+this.size)%this.size    this.Length -= 1    return true}func (this *MyCircularQueue) Front() int {    if this.IsEmpty(){        return -1    }    return this.Queue[this.head]}func (this *MyCircularQueue) Rear() int {    if this.IsEmpty(){        return -1    }    return this.Queue[ (this.Tail-1+this.size)%this.size ]}func (this *MyCircularQueue) IsEmpty() bool {    return this.head == this.Tail}func (this *MyCircularQueue) IsFull() bool {    if (this.Tail + 1)%this.size == this.head {        return true    }    return false}/** * Your MyCircularQueue object will be instantiated and called as such: * obj := Constructor(k); * param_1 := obj.EnQueue(value); * param_2 := obj.DeQueue(); * param_3 := obj.Front(); * param_4 := obj.Rear(); * param_5 := obj.IsEmpty(); * param_6 := obj.IsFull(); */
总结

以上是内存溢出为你收集整理的Go Rust解题——使用[ ]int 固定长度数组实现循环队列全部内容,希望文章能够帮你解决Go Rust解题——使用[ ]int 固定长度数组实现循环队列所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1212042.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-04
下一篇2022-06-04

发表评论

登录后才能评论

评论列表(0条)

    保存