资源简介 (共20张PPT)网络信息系统的用户角色数据组织以上图片均为本机截图以上图片均为本机截图以上图片均为本机截图访问控制访问控制是在保障授权用户能获取所需资源的同时拒绝非授权用户的安全机制。非授权用户没有访问权限,授权用户有访问权限,但是授权用户中存在存取权限的差别,如读取、写入、执行、删除、追加等存取方式以上图片为本机截图群创建者/群主群管理员用户用户角色权限 群主 管理员 群成员添加/删除群成员 √ √修改群资料 √ √删除上传到群共享的文件 √ √删除相册/相片 √ √设置/删除群管理员 √ √解散/转让该QQ群 √设置加群方式 √聊天 √ √上传图片 √ √……QQ群成员权限(部分)在数据库中如何保存这些用户角色数据?用户名称 用户角色Sinor 有限制的管理员Sinor 栏目1信息发布员Sinor 栏目1信息审核员Sinor 栏目1信息管理员Applesiri 有限制的管理员Applesiri 栏目2信息发布员…… ……此种组织方式的问题是当需要删除、修改某个用户的角色数据时,需要涉及多条记录的维护,若涉及的用户和用户角色较多,则数据处理的时间消耗较大。用户名称 有限制的管理员 栏目1发布员 栏目1审核员 栏目1管理员 栏目2发布员 栏目2审核员 栏目2管理员 栏目3发布员 ……Sinor 1 1 1 1 0 0 0 0 ……Applesiri 1 0 0 0 1 1 1 0 ………… …… …… …… …… …… …… …… …… ……一个用户的处理涉及一条记录中的多个字段,当大批量用户数据需要维护时,处理效率就显得低下,而且数据库的结构也显得过于臃肿。用户名称 用户角色特征值Sinor 240Applesiri 142某数据表中采用了前面所述的“压缩”方法存储用户角色特征,现在需要将某个十进制角色特征值转换为一一个对应的二进制数。具体要求如下:1.抽象与建模,将问题已知条件和求解目标用清晰的语言描述,然后建立一个可行的计算模型。2.设计算法与数据结构,并选择合适的方式描述算法,为后阶段用计算机程序求解提供支撑。项目描述一、抽象与建模为了确定计算模型,还需要进一步明确 条件。不妨假定该系统中一共有20个不同的、相互独立的角色分类,这就确定了最终转换生成的二进制数是20位的。为了描述精确,不妨设读取的某用户特征值存放于变量x中,同时转换产生的二进制数各数位上的0或者1保存在数组a中。1.x范围:0 - (220-1)2.a的元素个数:20二、设计算法依托前面建立的计算模型,根据已知数据及数据之间的关系设计数据结构,同时设计解决该问题的算法,并描述你的分析过程。三、描述算法1.输入十进制数x2.初始化a=[0]*203.设置数组下标i=04.当x>0,将x除以2取余,余数赋值到a[i]中5.把x整除2的结果赋值给x6.i自增17.当x>0,则执行第4步,否则执行第8步8.逆序输出a数组自然语言描述三、描述算法流程图三、描述算法伪代码输入十进制数xa=[0]*20i=0while x>0:a[i]=x%2x//=2i=i+1逆序输出a数组三、描述算法计算机程序设计语言(Python)x=int(input("请输入十进制数:"))a=[0]*20i=0while x>0:a[i]=x%2x=x//2i+=1print("二进制值为:")for i in range(19,-1,-1):print(a[i],end="")拓展提高还可以用其他的数据结构来完成该项目么?怎么做?课堂小结进制转换数据结构不同算法不同 展开更多...... 收起↑ 资源预览