概述
基于学习和巩固swift、python语法的想法,同时也加强基础算法的总结,再则把学习的做一个笔记。以上三个理由写一写...
Queue和Stack都是基于数组的基础上实现最基本功能,只是一个最基础思路。
Queue swift:
public class Queue{
var queueArr : [Any] = []var count : Int{
return queueArr.count
}
func enqueue(_ someOne:Any) {
queueArr.append(someOne)
}
func dequeue() -> (Any?) {
if self.isEmpty(){
return nil
}
return queueArr.removeFirst()
}
func isEmpty() -> Bool {
return queueArr.isEmpty
}
}
Queue python:
class Queue(object):
def __init__(self,maxSize):
self.maxSize=maxSize
self.queueArr=[]def
enQueue(self,some):
self.queueArr.append(some)
def deQueue(self) :
if self.isEmpty() :
return -1
firstElement = self.queueArr[0]
self.queueArr.remove(firstElement)
return firstElement
def isEmpty(self):
if len(self.queueArr) == 0:
return Truereturn False
def __str__():
return str(self.queueArr)
栈是一种 LIFO(Last In First Out) 的数据结构,常用方法有添加元素,取栈顶元素,弹出栈顶元素,判断栈是否为空。swift没有提供栈的基础结构,但是python中collections是提供了的。
Stack swift:
public class Stack{
var stackArr : [Any] = []
var count : Int{
return stackArr.count
}
func push(_ someOne:Any) {
stackArr.append(someOne)
}
func pop() -> (Any?) {
if self.isEmpty(){
return nil
}
return stackArr.removeLast()
}
func isEmpty() -> Bool {
return stackArr.isEmpty
}
}
Stack python:
class Stack(object):
def __init__(self, maxSize):
self.maxSize=maxSize
self.stackArr=[]
def push(self,some):
if self.size() < self.maxSize:
self.stackArr.append(some)
return -1
def pop(self):
if self.isEmpty():
return None
lastItem=self.stackArr[self.size() - 1]
self.stackArr.remove(lastItem)
return lastItem
def size(self):
return len(self.stackArr)
def isEmpty(self):
if self.size == 0:
return True
return False
python提供
>>> import collections
>>> stack=collections.deque()
>>> stack.append("sss")
>>> len(stack)
1
>>> len(stack)
1
>>> stack.pop()
"sss"
>>> len(stack)
0
>>>
最后
以上就是安详路人为你收集整理的swift调用python-swift、python语法实现Queue、Stack的全部内容,希望文章能够帮你解决swift调用python-swift、python语法实现Queue、Stack所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复