- 博客(9)
- 收藏
- 关注
原创 图书销售管理系统需求分析2
基础属性:会员编号(主键)、姓名、联系方式(手机 / 邮箱)、地址、登录密码、有效期、会员组 ID、账户余额、积分、状态(正常 / 挂失 / 特别处理)基础属性:图书编号(主键)、书名、作者、出版社、出版日期、ISBN 号、分类、定价、库存数量、最低折扣价、零售价、编目状态(是否可销售):收款记录(收款时间、金额、方式)、付款记录(付款对象、金额、时间)、财务报表(销售额、成本、利润):包含盘点记录(盘点时间、差异数量、原因)、进货记录(进货数量、金额)、退货记录(退货数量、金额)
2025-05-18 21:10:14
1136
原创 图书销售管理系统需求分析
报表内容包括销售额、成本、利润等关键财务指标,以直观的图表(柱状图、折线图等)和表格形式展示,方便财务人员和企业管理者进行财务分析和决策。订单内容包括订单编号、客户信息、购买图书清单(书名、数量、单价)、订单总价、下单时间等。订单状态管理:订单状态分为未付款、已付款、已发货、已完成、已取消等。图书录入:管理员能够添加新图书的详细信息,包括书名、作者、出版社、出版日期、ISBN 号、分类、定价、库存数量等。客户购买记录查询:客户可以查看自己的历史购买记录,包括购买时间、购买图书清单、购买数量、支付金额等。
2025-05-13 18:48:44
842
原创 修理牧场问题
哈夫曼树是一种用于数据压缩的二叉树,它根据字符出现的频率来构建,使得频率低的字符有更深的路径,从而达到压缩数据的目的。最小堆的顶部元素始终是频率最小的元素,且插入和删除操作的时间复杂度都是O(log n)。因此,总的时间复杂度是O(n log n) + O(n log n) = O(n log n),其中n是字符频率的数量。每次从最小堆中取出两个元素并推回一个元素的时间复杂度是O(log n)。主要的空间开销是存储字符频率的vector和最小堆。构建最小堆的时间复杂度是O(n log n)。
2024-12-01 14:21:34
273
原创 PAT 考试排名汇总
使用struct student来定义学生信息,包括考号(id)、考场(kao)、成绩(score)、考场内排名(rank_in_kao)和总排名(total_rank)。if (i > st && stu[i].score == stu[i - 1].score) // 注意这里应该是i > st,避免访问stu[-1]// 对当前考场的学生进行排序。对于每个考场,读取该考场的学生数量k,然后读取每个学生的考号和成绩,并存储在stu数组中。遍历stu数组,输出每个学生的考号、总排名、考场和考场内排名。
2024-12-01 13:27:51
472
原创 24点问题
先算两个数,这两个数算的结果和剩余的n-2个数计算,也就是n-1个数计算,最终简化成1个数算24点。每次递归调用都减少了一个数字(因为它被用作了一个运算的结果),直到只剩下一个数字为止。2.每次递归调用时,都会减少一个数字(因为已经选择了一个数字进行运算),并尝试四种运算。3.如果在任何递归调用中找到了一个组合使得结果为24,则立即返回真(true)。1.在count24函数中,通过递归和回溯的方式尝试所有可能的数字和运算组合。4.检查四元组是否全为零,如果是,则跳出循环。2.进入无限循环,等待用户输入。
2024-11-28 20:49:02
266
原创 7-9旅游规划
这个问题是一个典型的图论问题,涉及到寻找最短路径,并且要求在最短路径中找收费最低的一条。这里,我们可以使用 Dijkstra 算法来解决最短路径问题,并在算法的基础上记录每条路径的收费额,从而找到符合条件的最优路径。2.初始化:为每个城市初始化一个距离数组dist和一个收费数组cost,以及一个用于路径来源的数组prev。使用一个优先队列(最小堆)来存储当前已经访问过的节点,根据距离和收费的组合进行排序。不断从优先队列中取出距离和收费最优的节点,更新其邻居节点的距离和收费。通过输入边信息,更新矩阵。
2024-11-25 17:23:29
324
原创 7-20表达式转换
遇到右括号 ) 时,从栈中弹出操作符直到遇到左括号 (,并添加空格分隔。根据上下文判断当前的正负号或加减操作符是表示数字的正负还是作为操作符。在前一次的基础上增加了处理正负号问题的代码,以及删除字符串最后的空格。如果是操作符,则根据优先级处理栈中的操作符,并将当前操作符压入栈中。循环结束后,将栈中剩余的所有操作符弹出并添加到结果字符串中。去除末尾空格:如果结果字符串末尾存在空格,则去除。如果遇到数字字符,首先处理之前可能存在的负号。遇到左括号 ( 时,将其压入栈中。根据优先级处理栈中的操作符。
2024-11-25 17:09:10
171
原创 A1表达式转换预习
如果是操作数,则将其添加到输出列表中。如果是左括号“(”,则将其推入栈中。如果是右括号“)”,则将栈中的操作符弹出并添加到输出列表中,直到遇到左括号为止。如果是运算符,则将其与栈顶的运算符进行比较。如果栈顶运算符具有更高或相等的优先级,则将其弹出并添加到输出列表中。中缀转后缀的整体思路。
2024-11-19 20:00:57
238
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅