1、请写一个程序,随机打印“0”、“1”、“2”,但保证“0”、“1”、“2”出现的概率 是可配置的,例如 2:1:3。 2、有一个基于数据库的通知发布系统,需要能够灵活配置通知生效的时间: a)可以设置在某几个小时内生效,如指定"2046 年 12 月 24 日 18 时到 25 日 0 时生效 b)可以设置在一周的某几天发布,如可以设置周六、周日生效 c)可以设置一月的某几天生效,如可以设置 5 号、6 号生效 d)可以设置某一月的奇数日或者偶数日生效,如 1、3、5 号生效 请设计数据库表结构,并简要说明设计思路。 3、为某图书馆开发在线浏览系统,使用户可以通过自定义的图书别名浏览 相关联的图书内容。假设该图书馆有 1000 万
注册用户,馆藏图书 1000 万部。 在线浏览
系统允许用户自定义分类名称,每个分类可以包含若干部书籍。用户可 以添加、删除分类,修改分类的名称(同一用户不允许有名称相同的分类),可以 在分类下添加、删除书籍,修改书籍的别名(同一分类下不允许有名称相同的别 名)。现在设定每个用户最多可以自定义 100 个分类,每个分类最多可以包含 100 部书籍。 A、假定用数据库解决存储问题,请设计相关的数据表结构,并给出设计考 虑。 B、请给出下列操作的 SQL 语句 展示用户 A 的所有分类
展示用户 A 所设置的分类 F 下的所有书籍信息 C、请根据题目 A 的结果,尝试分析一下当用户数目增长到 1 亿,馆藏图书 达到 10 亿册,每天访问用户达到 500 万,平均每人有 10 次操作时,系统应当 做哪些改进或优化。 注 1:假定用户表、书籍表已经存在,且用户表中包含用户 ID 等必要信息, 书籍表中包含书籍名称、作者等必要信息 注 2:图书别名是用户对某部图书自定义的名称。在不同的分类中,相同的 别名可能对应不同的书籍 4、一个数据文件,每条记录内容包括:时间、IP 地址、关键词。记录是无 序排列的,条数超过 2000 万条。 要求对该数据文件按检索词的顺序进行排序, 并保持时间、 地址和关键词 IP 的关联关系。 请设计一个程序, 实现上述功能, 并分析时间复杂度和空间复杂度。 运行程序所使用的服务器的内存为 1G,硬盘足够大。(至少要给出关键算法和 设计思路) 第一题.专家解答 专家解答
package edu.ruc.ydl;
import java.util.*; public class RandomNumbers { int firstProbability; int secondProbability; int thirdProbability;
public void configProbability(int firstProbability,int secondProbability,int thirdProbability)//配置出现概率比 { this.firstProbability=firstProbability; this.secondProbability=secondProbability; this.thirdProbability=thirdProbability; }
public int getRandom()//随机输出录入的数字如(0
,1,2) { Random ram=new Random(); int tempRamdom=ram.nextInt(firstProbability+secondProbability+third Probability); if (tempRamdom>=0 &;&; tempRamdom
=firstProbability &;&; tempRamdom public static void main(String[] args)//main { RandomNumbers randomNumbers=new RandomNumbers(); randomNumbers.configProbability(2,1,3); System.out.println(randomNumbers.getRandom()); } }
第二题.专家解答 第二题 专家解答
表名:Publish
字段名 类型 缺省值 中文含义 约束 备注
id Int 0 编号 PRI
title Varchar(30) 发布内容的标题
content Varchar(50) 发布的内容
time Varchar(200)
day Varchar(200)
date Varchar(200)
pdouble int 0 1 表示奇数,2 表示偶数 奇偶日
choice Int 0 表示选择以上哪几种组合
Publish 表由下列字段组成
Publish_id 发布内容的唯一标识;
Publish_title 发布内容的标题
Publish_content 发布的内容
...... 其他与内容相关的字段
/*下列字段用于控制*/
Pu