当前位置: 首页 > news >正文

栈与堆的演示

1、栈与堆的演示

(1)网页视图

(2)代码

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>栈和堆演示</title><style>body {font-family: Arial, sans-serif;text-align: center;}.container {display: flex;justify-content: space-around;margin: 20px;}.stack, .heap {border: 2px solid #000;width: 150px;height: 300px;position: relative;}.stack div, .heap div {width: 100%;height: 30px;background: #4CAF50;margin: 2px 0;transition: all 0.3s ease;}.heap div {background: #2196F3;}</style>
</head>
<body><h1>栈和堆演示</h1><div class="container"><div class="stack" id="stack"><h2>栈</h2></div><div class="heap" id="heap"><h2>堆</h2></div></div><button onclick="pup1()">压栈</button><button onclick="pup2()">弹栈</button><button onclick="pup3()">分配堆</button><button onclick="pup4()">释放堆</button><script>let stack = [];let heap = [];function pup1() {const value = Math.floor(Math.random() * 100);stack.push(value);updateStackDisplay();}function pup2() {if (stack.length > 0) {stack.pop();updateStackDisplay();}}function allocateHeap() {const value = Math.floor(Math.random() * 100);heap.push(value);updateHeapDisplay();}function deallocateHeap() {if (heap.length > 0) {heap.pop();updateHeapDisplay();}}function updateStackDisplay() {const stackDiv = document.getElementById('stack');stackDiv.innerHTML = '<h2>栈</h2>';stack.forEach(item => {const div = document.createElement('div');div.innerText = item;stackDiv.appendChild(div);});}function updateHeapDisplay() {const heapDiv = document.getElementById('heap');heapDiv.innerHTML = '<h2>堆</h2>';heap.forEach(item => {const div = document.createElement('div');div.innerText = item;heapDiv.appendChild(div);});}</script>
</body>
</html>

http://www.xdnf.cn/news/164089.html

相关文章:

  • C++ 为什么建议类模板定义在头文件中,而不定义在源文件中
  • 对卡尔曼滤波的理解和简单示例实现
  • 数据库原理(1)
  • N字形上升形态选股代码如何编写?
  • 平面连杆机构(上)
  • 定制一款国密浏览器(11):SM2算法的椭圆曲线参数定义
  • 4月25日日记(补)
  • 6.Geometric Intersection (几何求交)- Preliminary
  • 用高德API提取广州地铁线路(shp、excel)
  • Docker Compose--在Ubuntu中安装Docker compose
  • Java 异常处理全解析:从基础到自定义异常的实战指南
  • Java社区门诊系统源码 SaaS医院门诊系统源码 可上线运营
  • 深入理解JavaScript异步编程:从回调地狱到Promise/Async优雅解决方案
  • Eigen核心矩阵/向量类 (Matrix, Vector, Array)
  • 循环神经网络RNN---LSTM
  • 函数递归之青蛙跳台阶+汉诺塔
  • 网络原理 - 8
  • 某海关某署 【瑞数6】逆向分析
  • 矩阵系统私信功能开发技术实践,支持OEM
  • Eigen的主要类及其功能
  • ACPs:面向智能体互联网的智能体协作协议体系
  • 经典反转结构——案例分析
  • 《算法竞赛进阶指南》0x20章目录
  • 57常用控件_QLineEdit的属性
  • 使用css修饰网页元素
  • 聚合分销系统开发:短剧小说外卖网盘电商cpscpa系统
  • PCL点云处理之基于FPFH特征的SAC-IA全局配准算法 (二百四十六)
  • 基于javaweb的SpringBoot小说阅读系统设计与实现(源码+文档+部署讲解)
  • Unity网络编程入门:掌握Netcode for GameObjects实现多人游戏基础(Day 39)
  • dubbo 隐式传递