(共16张PPT)
选择性必修1《数据与数据结构》
第一章 数据与数据组织
项目挑战《网络信息系统的用户角色数据组织》研究汇报
目 录
01
项目任务
02
研究步骤
03
研究成果
04
小组总结
01
项目任务
某数据表中采用“压缩”方法存储用户角色特征,现在需要将某个十进制角色特征值转换为一个对应的二进制数。
1.项目背景
1.项目背景
论坛一般由站长(创始人)创建,并设立各级管理人员对论坛进行管理,包括论坛管理员、超级版主、版主(俗称 斑竹”)进行分级管理。其具有着复杂的用户权限管理体系,可以设定每一用户在每一板块的访问权、信息发布权以及管理权。
如何管理网络信息系统的用户角色数据?
1.项目背景
用户角色数据组织形式1
用户角色数据组织形式2
请简要阐述这两种数据组织形式的特点及优缺点。
1.项目背景
数据实际采用十进制的形式“压缩” 存储,更省空间。
2.项目任务
某数据表中采用了前面所述的“压缩”方法存储用户角色特征,现在需要将某个十进制角色特征值转换为一个对应的二进制数。具体要求如下:
1. 抽象与建模,将问题已知条件和求解目标用清晰的语言描述,然后建立一个可行的计算模型。
2. 设计算法与数据结构,并选择合适的方式描述算法,为后阶段用计算机程序求解提供支撑。
02
研究步骤
抽象与建模
设计算法与数据结构
描述算法
抽象与建模
00000000000011110000
20位二进制数的取值范围?
0~(220-1=1048575)
十进制数如何转为二进制数?
20种互相独立的角色分类
2.设计算法与数据结构
依托前面建立的计算模型,根据已知数据及数据之间的关系设计数据结构,同时设计解决该问题的算法,并描述你的分析过程。
3.描述算法
用除二取余法列竖式实现十进制转二进制算法描述
选用恰当的方式(自然语言、流程图或者伪代码等)来描述你的算法,帮助算法执行者顺利地按照你的算法逐步执行(如果要让计算机来实施处理,需要用计算机程序设计语言准确地描述该算法)。
03
研究成果展示
自然语言
流程图
伪代码
6.研究成果展示
自然语言描述
1.输入十进制数Oct
2.初始化Bin=[0]*20
3.设置数组下标i=0
4.如何Oct>0执行语句5,
如果不成立执行语句8
5.Oct除2取余,余数赋值到Bin[i]
6.把Oct整除2的结果赋值给Oct
7.i自增1,返回第4步继续执行
8.逆序输出Bin数组
流程图
伪代码:
a=[0]*20
i=0
输入十进制数Oct
while Oct>0:
a[i]=Oct%2
Oct//=2
i=i+1
逆序输出a数组
6.研究成果展示
小组交流,进一步完善使用字符串数据结构存储二进制数。
字符串形式实现流程图
学生选择的流程图绘制软件
Visio
xmind
word