Springboot整合分頁外掛PageHelper步驟解析
阿新 • • 發佈:2020-06-28
1 stack的實現
實現介面:
init() 用於初始化stack,資料型別為list
size() 用於獲得stack的大小
push() 用於往棧中新增元素,新增的元素型別可以是int或者list
top()獲取棧頂元素
pop() 彈出並返回棧頂元素
print_stack() 列印棧
class Stack(object):
def __init__(self):
self.len = 0
self._stack = []
def init(self, init_list):
self._stack = init_list
self.len = len(init_list)
def size(self):
return self.len
def push(self, val):
if isinstance(val, int):
self._stack.append(val)
self.len += 1
elif isinstance(val, list):
self._stack.extend(val)
self.len += len(val)
else:
assert isinstance(val, int) or isinstance(val, list)
def top(self):
return None if self.len == 0 else self._stack[self.len - 1]
def pop(self):
if self.len == 0:
assert self.len > 0
else:
self.len -= 1
return self._stack.pop()
return None
def print_stack(self):
print('Bottom |', *self._stack, '| Top >')
測試結果
2 quque的實現
實現介面:
init() 用於初始化佇列,資料型別為list
size() 用於獲得佇列的大小
push() 用於往佇列尾部新增元素,新增的元素型別可以是int或者list
rear()獲取佇列尾部元素
front() 獲取佇列頭部元素
pop() 彈出並返回佇列頭部元素
print_queue() 列印佇列
class Queue(object):
def __init__(self):
self.len = 0
self._queue = []
def init(self, init_list):
self._queue = init_list
self.len = len(init_list)
def size(self):
return self.len
def push(self, val):
if isinstance(val, int):
self._queue.append(val)
self.len += 1
elif isinstance(val, list):
self._queue.extend(val)
self.len += len(val)
else:
assert isinstance(val, int) or isinstance(val, list)
def rear(self):
return None if self.len == 0 else self._queue[self.len - 1]
def front(self):
return None if self.len == 0 else self._queue[0]
def pop(self):
assert self.len > 0
self.len -= 1
return self._queue.pop(0)
def print_queue(self):
print('Front |', *self._queue, '| Rear >')
測試結果