python实现堆栈与队列的方法

python实现堆栈与队列的方法,第1张

python实现堆栈队列的方法

本文实例讲述了python实现堆栈与队列的方法。分享给大家供大家参考。具体分析如下:

1、python实现堆栈,可先将Stack类写入文件stack.py,在其它程序文件中使用from stack import Stack,然后就可以使用堆栈了。

stack.py的程序:

代码如下:class Stack():

def __init__(self,size):

self.size=size

self.stack=[]

self.top=-1

def push(self,ele): #入栈之前检查栈是否已满

if self.isfull():

raise exception("out of range")

else:

self.stack.append(ele)

self.top=self.top+1

def pop(self): # 出栈之前检查栈是否为空

if self.isempty():

raise exception("stack is empty"山顷)

else:

self.top=self.top-1

return self.stack.pop()

def isfull(self):

return self.top+1==self.size

def isempty(self):

return self.top==-1

再闷唯埋写一个蚂蚂程序文件,stacktest.py,使用栈,内容如下:

代码如下:#!/usr/bin/python

from stack import Stack

s=Stack(20)

for i in range(3):

s.push(i)

s.pop()

print s.isempty()

2、python 实现队列:

复制代码代码如下:class Queue():

def __init__(self,size):

self.size=size

self.front=-1

self.rear=-1

self.queue=[]

def enqueue(self,ele): #入队 *** 作

if self.isfull():

raise exception("queue is full")

else:

self.queue.append(ele)

self.rear=self.rear+1

def dequeue(self): #出队 *** 作

if self.isempty():

raise exception("queue is empty")

else:

self.front=self.front+1

return self.queue[self.front]

def isfull(self):

return self.rear-self.front+1==self.size

def isempty(self):

return self.front==self.rear

q=Queue(10)

for i in range(3):

q.enqueue(i)

print q.dequeue()

print q.isempty()

希望本文所述对大家的Python程序设计有所帮助。

数据预测不一定需要用到机器学习,回归分析足够了,亏尺大而且这样的外推常常不一定销竖准确,还需要对结果进行统计学检验,如果要用到机器学习的话我推荐你是用matlab,里面的算法都是封装好的直接使用,我也推荐你几个预测算法

GRNN(广义回归神经网络):这个方法涉及到神经网络,对小样本数据有较好预测。

SVM回归预测分析

SVM的信息粒化时序回归预测:svm学过机器学习都应该了解,困慧它不仅可以用于分类,同样可用于数据预测外推,一个股票预测的例子很有意思

其他的还有自组织竞争网络(模式分类、预测)、灰色神经网络预测

原创答案,打字回答不易,如果满意望采纳,谢谢!


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

原文地址: http://outofmemory.cn/yw/12380408.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存