//栈是后进先出的结构
//栈结构的类
//支持push,pop,isEmpty,peek,size
class Stack {
var stack: [AnyoBject]
init() {
stack = [AnyoBject]()
}
func push(object: AnyObject) -> Bool {
return stack.append(object)
}
func pop() -> AnyObject? {
if !isEmpty() {
return stack.removeLast()
} else {
return nil
}
}
func isEmpty() -> Bool {
return stack.isEmpty
}
func peek() -> AnyObject? {
return stack.last
}
func size() -> Int {
return stack.count
}
}
//队列是先进先出的类
//应用GCD,NSOperationQueue
//enqueue,dequeue,isEmpty,peek,size
class Queue {
var queue: [AnyObject]
init() {
queue = [AnyObject]()
}
func enqueue(object: AnyObject) -> Bool {
return queue.append(object)
}
func dequeue() -> AnyObject? {
if !isEmpty() {
return queue.removeFirst()
} else {
return nil
}
}
func isEmpty() -> Bool {
return queue.isEmpty
}
func peek() -> AnyObject? {
return queue.first
}
func size() -> Int {
return queue.count
}
}
Swift中的栈和队列
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 关联数组就像字典一样,我们可以通过一个键访问它对应的值。比如我可以往一本空字典里添加两个单词,a:一个,good:...
