Ֆիքսված չափի պահունակ
Դուք ծրագրավորման ուսուցման հարթակի զարգացման թիմի անդամ եք: Որպես բացառությունների մշակման և տվյալների կառուցվածքի ստեղծման դաս, ձեզ խնդրել են ստեղծել Stack կլաս Python-ում: Այս Stack-ն ունի ֆիքսված չափ և ունի երեք գործողություն.
push(item)
: Ավելացնում է տարր պահունակի վերևում:
pop()
: Հեռացնում է պահունակի վերին տարրը և վերադարձնում այն:
peek()
: Նայում է բուրգի վերին տարրին՝ առանց այն հեռացնելու:
Այնուամենայնիվ, ձեր Stack կլասը պետք է ունենա հետևյալ սահմանափակումները.
push (item)
գործողությունը պետք է raise անիStackOverflowError
բացառություն, եթե փորձում եք որևէ տարր ավելացնել ամբողջական պահունակին:
pop()
գործողությունը պետք է raise անիStackEmptyError
բացառություն, եթե փորձում եք տարր դուրս հանել դատարկ պահունակից:
Մուտք | Ելք |
stack = Stack(3); stack.push('A'); stack.push('B'); stack.push('C'); stack.push('D'); print(stack.peek()); print(stack.pop()); print(stack.pop()); print(stack.pop()); print(stack.pop()) | StackOverflowError: The stack is full
C
C
B
A
StackEmptyError: The stack is empty
|
Constraints
Time limit: 0.2 seconds
Memory limit: 512 MB
Output limit: 1 MB