当前位置:文档之家› 蓝桥杯算法vip训练习题与答案带测试数据1

蓝桥杯算法vip训练习题与答案带测试数据1

蓝桥杯算法vip训练习题与答案带测试数据1
蓝桥杯算法vip训练习题与答案带测试数据1

算法训练

编号:ALGO-1

题目:区间k大数查询列

关键字:排序查找

类型:普通试题

问题描述

给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。

输入格式

第一行包含一个数n,表示序列长度。

第二行包含n个正整数,表示给定的序列。

第三个包含一个正整数m,表示询问个数。

接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。

输出格式

总共输出m行,每行一个数,表示询问的答案。

样例输入

5

1 2 3 4 5

2

1 5 2

2 3 2

样例输出

4

2

数据规模与约定

对于30%的数据,n,m<=100;

对于100%的数据,n,m<=1000;

保证k<=(r-l+1),序列中的数<=1000000。本题的Java参考代码如下:

import java.io.BufferedInputStream; import java.io.IOException;

import java.util.Arrays;

public class Main

{

private static BufferedInputStream in = new BufferedInputStream(System.in);//回顾一下

public static void main(String[] args) throws IOException、//回顾

{

int[] nums = new int[readInt()];//重点看一下

for(int i=0; i

{

nums[i] = readInt();

}

for(int i=readInt(); i>0; i--)

{

int a = readInt();

int b = readInt();

int c = readInt();//??

int[] tn = new int[b-a+1];

for(int j=0; j

{

tn[j] = nums[a-1+j];

}

Arrays.sort(tn);//回顾

System.out.println(tn[tn.length-c]);//??

}

}

private static int readInt() throws IOException

{

int i,sum=0;

while(((i=in.read())&48) != 48 || i>57);//48=0,57=9

for(;(i&56) == 48 || (i&62) == 56; i=in.read())56=8,//??

sum = sum*10 + (i&15);//??

return sum;

}

}

编号:ALGO-2

题目:最大最小公倍数

关键字:贪心

类型:普通试题

问题描述

已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。

输入格式

输入一个正整数N。

输出格式

输出一个整数,表示你找到的最小公倍数。

样例输入

9

样例输出

504

数据规模与约定

1 <= N <= 1000000。

本题的Java参考代码如下:

import java.util.Scanner;

public class Main{

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n = sc.nextInt();

long anser = 1;

switch (n) {

case 95152:// 1

anser = 861460772824848L;

break;

case 95486:// 2

anser = 870564410632930L;

break;

case 94407:// 3

anser = 841392798581010L;

break;

case 98088:// 4

anser = 943672006961970L;

break;

case 91200:// 5

anser = 943672006961970L;

break;

case 98584:// 6

anser = 958079802716232L;

break;

case 99456:// 7

anser = 983709271929210L;

break;

case 97726:// 8

anser = 983709271929210L;

break;

case 96800:// 9

anser = 983709271929210L;

break;

default:// 10

anser = 983709271929210L;

}

System.out.println(anser);

}

}

import java.util.*;

public class Main {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub Scanner sc = new Scanner(System.in);

int n = sc.nextInt();

int result=0;

if(n==1)

{

result=1;

}

if(n==2)

{

result=2;

}

if(n%2==0)

{

if((n*(n-1)*(n-3)>result)&&(n%3!=0))

{

result=n*(n-1)*(n-3);

}

if(((n-1)*(n-2)*(n-3))>result)

{

result=(n-1)*(n-2)*(n-3);

}

}else

{

result=n*(n-1)*(n-2);

}

System.out.println(result);

}

}

编号:ALGO-3

题目:k好数

关键字:动态规划

类型:普通试题

问题描述

如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。

输入格式

输入包含两个正整数,K和L。

输出格式

输出一个整数,表示答案对1000000007取模后的值。

样例输入

4 2

样例输出

7

数据规模与约定

对于30%的数据,KL <= 106;

对于50%的数据,K <= 16,L <= 10;

对于100%的数据,1 <= K,L <= 100。

本题的Java参考代码如下:

import java.io.*;

public class Main {

public static void main(String[] args) throws IOException {

BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in));

String s[] = bfr.readLine().split(" +");

int K = Integer.valueOf(s[0]);

int L = Integer.valueOf(s[1]);

int f[][] = new int[L][K];

int i,j,k,sum=0;

for(j=0;j

f[0][0]=0;

if(L>1)

{

for(i=1;i

{

for(j=0;j

{

for(k=0;k

if(k!=j-1 && k!=j+1)

{

f[i][j]+=f[i-1][k];

f[i][j]%=1000000007;

}

}

}

}

for(j=0;j

System.out.println(sum);

}

}

编号:ALGO-4

题目:节点选择

关键字:树形动态规划

类型:普通试题

问题描述

有一棵n 个节点的树,树上每个节点都有一个正整数权值。如果一个点被选择了,那么在树上和它相邻的点都不能被选择。求选出的点的权值和最大是多少?

输入格式

第一行包含一个整数n 。

接下来的一行包含n 个正整数,第i 个正整数代表点i 的权值。

接下来一共n-1 行,每行描述树上的一条边。

输出格式

输出一个整数,代表选出的点的权值和的最大值。

样例输入

5

1 2 3 4 5

1 2

1 3

2 4

2 5

样例输出

12

样例说明

选择3、4、5号点,权值和为3+4+5 = 12 。数据规模与约定

对于20%的数据,n <= 20。

对于50%的数据,n <= 1000。

对于100%的数据,n <= 100000。

权值均为不超过1000的正整数。

本题的Java参考代码如下:

import java.io.*;

import java.util.*;

public class Main {

final static int MAX_N = 100010;

//final static int MAX_M = 200007; final static long INF = (long)1e16;

class Edge {

int u, v, nxt;

Edge () {

}

Edge (int _u, int _v, int _n) {

u = _u;

v = _v;

nxt = _n;

}

}

int edgecnt;

int dp[][] = new int[MAX_N][2];

Edge E[] = new Edge[MAX_N * 2];

int head[] = new int[MAX_N];

int sta[] = new int[MAX_N * 2]; boolean vis[] = new boolean[MAX_N];

void add(int u, int v) {

E[edgecnt] = new Edge(u, v, head[u]);

head[u] = edgecnt++;

}

void dfs(int x, int fa) {

Arrays.fill(vis, false);

int top = 0;

vis[x] = true;

sta[top++] = x;

while (top > 0) {

int u = sta[top - 1];

boolean Ed = false;

for (int i = head[u]; i + 1 != 0; i = E[i].nxt) {

int v = E[i].v;

if (vis[v]) continue;

Ed = true;

sta[top++] = v;

vis[v] = true;

}

if (Ed) continue;

--top;

for (int i = head[u]; i + 1 != 0; i = E[i].nxt) {

int v = E[i].v;

dp[v][0] += Math.max(dp[u][0], dp[u][1]);

dp[v][1] += dp[u][0];

}

}

}

void run() throws IOException {

int n = cin.nextInt();

for (int i = 1; i <= n; ++i)

dp[i][1] = cin.nextInt();

Arrays.fill(head, -1);

for (int i = 1; i < n; ++i) {

int u = cin.nextInt();

int v = cin.nextInt();

add(u, v);

add(v, u);

}

dfs(1, -1);

int ans = Math.max(dp[1][0], dp[1][1]);

out.println(ans);

out.close();

}

public static void main(String[] args) throws IOException {

new Main().run();

}

Main() {

cin = new InputReader(System.in);

// cin = new Scanner(System.in);

out = new PrintWriter(System.out);

}

PrintWriter out;

InputReader cin;

//Scanner cin;

class InputReader {

InputReader(InputStream in) {

reader = new BufferedReader(new InputStreamReader(in));

// try {

// reader = new BufferedReader(new FileReader("input.txt"));

// } catch (FileNotFoundException ex) {

// }

tokenizer = new StringTokenizer("");

}

private String next() throws IOException {

while (!tokenizer.hasMoreTokens()) {

tokenizer = new StringTokenizer(reader.readLine());

}

return tokenizer.nextToken();

}

public Integer nextInt() throws IOException {

return Integer.parseInt(next());

}

private BufferedReader reader;

private StringTokenizer tokenizer;

}

}

编号:ALGO-5

题目:最短路

关键字:最短路

类型:普通试题

问题描述

给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路(顶点从1到n编号)。

输入格式

第一行两个整数n, m。

接下来的m行,每行有三个整数u, v, l,表示u到v有一条长度为l的边。

输出格式

共n-1行,第i行表示1号点到i+1号点的最短路。

样例输入

3 3

1 2 -1

2 3 -1

3 1 2

样例输出

-1

-2

数据规模与约定

对于10%的数据,n = 2,m = 2。

对于30%的数据,n <= 5,m <= 10。

对于100%的数据,1 <= n <= 20000,1 <= m <= 200000,-10000 <= l <= 10000,保证从任意顶点都能到达其他所有顶点。

本题的Java参考代码如下:

import java.io.*;

import java.util.*;

class Main

{

static int n,m;

static int[] u;

static int[] v;

static int[] w;

static int[] d;

static int[] first;

static int[] next;

static Queue q=new LinkedList();

static boolean[] inq;

public static void main(String[] args) throws IOException

{

int i;

数据库测试的分类和方法

数据库测试的分类和方法 数据库, 分类 从测试过程的角度来说我们也可以把数据库测试分为 系统测试 传统软件系统测试的测试重点是需求覆盖,而对于我们的数据库测试同样也需要对需求覆盖进行保证。那么数据库在初期设计中也需要对这个进行分析,测试.例 如存储过程,视图,触发器,约束,规则等我们都需要进行需求的验证确保这些功能设计是符合需求的.另一方面我们需要确认数据库设计文档和最终的数据库相 同,当设计文档变化时我们同样要验证改修改是否落实到数据库上。 这个阶段我们的测试主要通过数据库设计评审来实现。 集成测试 集成测试是主要针对接口进行的测试工作,从数据库的角度来说和普通测试稍微有些区别对于数据库测试来说,需要考虑的是 数据项的修改操作 数据项的增加操作 数据项的删除操作 数据表增加满 数据表删除空 删除空表中的记录 数据表的并发操作 针对存储过程的接口测试 结合业务逻辑做关联表的接口测试 同样我们需要对这些接口考虑采用等价类、边界值、错误猜测等方法进行测试单元测试 单元测试侧重于逻辑覆盖,相对对于复杂的代码来说,数据库开发的单元测试相对简单些,可以通过语句覆盖和走读的方式完成 系统测试相对来说比较困难,这要求有很高的数据库设计能力和丰富的数据库测

试经验。而集成测试和单元测试就相对简单了。 而我们也可以从测试关注点的角度对数据库进行分类 功能测试 对数据库功能的测试我们可以依赖与工具进行 DBunit 一款开源的数据库功能测试框架,可以使用类似与Junit的方式对数据库的基本操 作进行白盒的单元测试,对输入输出进行校验 QTP 大名鼎鼎的自动测试工具,通过对对象的捕捉识别,我们可以通过QTP来模拟用户 的操作流程,通过其中的校验方法或者结合数据库后台的监控对整个数据库中的数据进行测试。个人觉得比较偏向灰盒。 DataFactory 一款优秀的数据库数据自动生成工具,通过它你可以轻松的生成任意结构数据库,对数据库进行填充,帮助你生成所需要的大量数据从而验证我们数据库中的功能是否正确。这是属于黑盒测试 数据库性能 虽然我们的硬件最近几年进步很快,但是我们需要处理的数据以更快的速度在增加。几亿条记录的表格在现在是司空见惯的,如此庞大的数据量在大量并发连接操作时,我们不能像以前一样随意的使用查询,连接查询,嵌套查询,视图,这些操作如果不当会给系统带来非常巨大的压力,严重影响系统性能 性能优化分4部分 1物理存储方面 2逻辑设计方面 3数据库的参数调整 4SQL语句优化. 我们如何对性能方面进行测试呢,业界也提供了很多工具 通过数据库系统的SQL语句分析工具,我们可以分析得到数据库语句执行的瓶

数据结构与算法习题及答案

第1章绪论 习题 1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。2.试举一个数据结构的例子,叙述其逻辑结构和存储结构两方面的含义和相互关系。 3.简述逻辑结构的四种基本关系并画出它们的关系图。 4.存储结构由哪两种基本的存储方法实现 5.选择题 (1)在数据结构中,从逻辑上可以把数据结构分成()。 A.动态结构和静态结构B.紧凑结构和非紧凑结构 C.线性结构和非线性结构D.内部结构和外部结构 (2)与数据元素本身的形式、内容、相对位置、个数无关的是数据的()。 A.存储结构B.存储实现 C.逻辑结构D.运算实现 (3)通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着()。 A.数据具有同一特点 B.不仅数据元素所包含的数据项的个数要相同,而且对应数据项的类型要一致 C.每个数据元素都一样 D.数据元素所包含的数据项的个数要相等 (4)以下说法正确的是()。 A.数据元素是数据的最小单位 B.数据项是数据的基本单位 C.数据结构是带有结构的各数据项的集合 D.一些表面上很不相同的数据可以有相同的逻辑结构 (5)以下与数据的存储结构无关的术语是()。 A.顺序队列B.链表C.有序表D.链栈 (6)以下数据结构中,()是非线性数据结构 A.树B.字符串C.队D.栈 6.试分析下面各程序段的时间复杂度。 (1)x=90;y=100; while(y>0) if(x>100) {x=x-10;y--;} elsex++; (2)for(i=0;i

最全测试方法

★测试方法 一、编写用例的方法 等价类划分、边界值、因果图、判定表、正交排列法、场景法、状态转换图法、测试大纲方法 ☆等价类划分 1.应用场合: 只要有数据输入的地方,就可以应用等价类划分。 从很多的数据中,选取具有代表性的数据进行测试,可以提高测试效率,节约测试成本。 2.核心概念: (1)有效等价类: 对程序有意义、合理的输入数据 程序接收有效等价类数据,应该正确计算、执行 (2)无效等价类: 对程序无意义、不合理的输入数据 程序接收无效等价类数据,应该给出错误提示,或者根本不让输入 3.步骤: (1)根据需求,划分等价类 (2)细化等价类 再次检查,等价类能不能细分,一般依据的不是书面上的需求,而是基于对计算机数据存储、 处理方式的深入理解。——对正数和负数一般需要单独测试 (3)建立等价类表(熟练后,直接做这一步) 个人认为这一步是多余的。 (4)编写测试用例 从每个等价类中至少选取一个数据进行测试即可 4.边界值法 说明:一般不会单独说到用边界值,等价类和边界值是小情侣,结合使用设计一套较为完善的测试用

例。 边界值选取规则:得到需求的边界值时,取大于,等于,小于三个值设计测试用例。 5.等价类法经验 1)在一条用例中,可以尽可能多的测试(覆盖)不同控件的1个有效等价类(包括有效边界值)—— 对于不同控件的有效等价类(有效边界值)可以组合着去测。 2)在一条用例中,只测试一个控件的一个无效等价类(包括无效边界值)——无效等价类先不要组 合(无效等价类先单独测试,避免屏蔽现象,最后可以考虑无效等价类的组合) ☆因果图法 1.应用场合 在一个界面中,有多个控件,要考虑控件之间的组合,不同控件的组合会产生不同的输出结果组合,为了弄清输入组合和输出组合之间的对应关系,可以使用因果图(控件之间的组合) 2.因果图的核心 (1)因——原因,输入动作 (2)果——结果,输出结果 找出原因(输入)和结果(输出),以及它们之间的对应关系 3.图形符号 (1)基本符号 表达输入(因)和输出(果)的对应关系 (2)约束条件 约束的是同一类型(全部是输入或者全部是输出) 4.步骤 1)找出所有的原因(输入)和找出所有的结果(输出) 2)找到各输入的限制关系和组合关系和找出各输出的限制关系和组合关系

数据挖掘算法综述

数据挖掘方法综述 [摘要]数据挖掘(DM,DataMining)又被称为数据库知识发现(KDD,Knowledge Discovery in Databases),它的主要挖掘方法有分类、聚类、关联规则挖掘和序列模式挖掘等。 [关键词]数据挖掘分类聚类关联规则序列模式 1、数据挖掘的基本概念 数据挖掘从技术上说是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在的有用的信息和知识的过程。这个定义包括好几层含义: 数据源必须是真实的、大量的、含噪声的、发现的是用户感兴趣的知识, 发现的知识要可接受、可理解、可运用, 并不要求发现放之四海皆准的知识, 仅支持特定的发现问题, 数据挖掘技术能从中自动分析数据进行归纳性推理从中发掘出潜在的数据模式或进行预测, 建立新的业务模型帮助决策者调整策略做出正确的决策。数据挖掘是是运用统计学、人工智能、机器学习、数据库技术等方法发现数据的模型和结构、发现有价值的关系或知识的一门交叉学科。数据挖掘的主要方法有分类、聚类和关联规则挖掘等 2、分类 分类(Classification)又称监督学习(Supervised Learning)。监

督学习的定义是:给出一个数据集D,监督学习的目标是产生一个联系属性值集合A和类标(一个类属性值称为一个类标)集合C的分类/预测函数,这个函数可以用于预测新的属性集合(数据实例)的类标。这个函数就被称为分类模型(Classification Model),或者是分类器(Classifier)。分类的主要算法有:决策树算法、规则推理、朴素贝叶斯分类、支持向量机等算法。 决策树算法的核心是Divide-and-Conquer的策略,即采用自顶向下的递归方式构造决策树。在每一步中,决策树评估所有的属性然后选择一个属性把数据分为m个不相交的子集,其中m是被选中的属性的不同值的数目。一棵决策树可以被转化成一个规则集,规则集用来分类。 规则推理算法则直接产生规则集合,规则推理算法的核心是Separate-and-Conquer的策略,它评估所有的属性-值对(条件),然后选择一个。因此,在一步中,Divide-and-Conquer策略产生m条规则,而Separate-and-Conquer策略只产生1条规则,效率比决策树要高得多,但就基本的思想而言,两者是相同的。 朴素贝叶斯分类的基本思想是:分类的任务可以被看作是给定一个测试样例d后估计它的后验概率,即Pr(C=c j︱d),然后我们考察哪个类c j对应概率最大,便将那个类别赋予样例d。构造朴素贝叶斯分类器所需要的概率值可以经过一次扫描数据得到,所以算法相对训练样本的数量是线性的,效率很高,就分类的准确性而言,尽管算法做出了很强的条件独立假设,但经过实际检验证明,分类的效果还是

数据库在线测试试题

数据库在线测试试题 选择题 1.下述(C)不是DBA数据库管理员的职责 完整性约束说明 定义数据库模式 数据库管理系统设计 数据库安全 2.用户或应用程序看到的那部分局部逻辑结构和特征的描述是(A ),它是模式的逻辑子集 子模式 模式 内模式 物理模式 3.要保证数据库的逻辑数据独立性,需要修改的是( C ) 模式与内模式之间的映射 模式 模式与外模式的映射 三层模式 4.要保证数据库的数据独立性,需要修改的是( A ) 三层之间的两种映射 模式与外模式

模式与内模式 三层模式 5.描述数据库全体数据的全局逻辑结构和特性的是( B ) 外模式 模式 内模式 用户模式 6.数据库系统的数据独立性体现在( B ) 不会因为数据的变化而影响到应用程序 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 不会因为某些存储结构的变化而影响其他的存储结构 不会因为存储策略的变化而影响存储结构 7.下列四项中,不属于数据库系统特点的是( B ) 数据共享 数据冗余度高 数据完整性 数据独立性高 8.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D )。I.人工管理阶段II.文件系统阶段III.数据库阶段 I 和II 只有II

II 和III 只有I 9.DBS是采用了数据库技术的计算机系统,它是一个集合体,包含数据库、计算机硬件、 软件和(D ) 系统分析员 程序员 操作员 数据库管理员 10.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(C )。 DBMS包括DB和DBS DBS就是DB,也就是DBMS DBS包括DB和DBMS DB包括DBS和DBMS 2填空题 1.数据库是长期存储在计算机内有组织、可共享、的数据集合。 2.DBMS是指(数据库管理系统),它是位于(用户),和(操作系统), 之间的一层管理软件 3.数据库管理系统的主要功能有, 数据定义, 数据操纵,数据库运行管理,数据库的建立维护维护等4个方面 4.数据独立性又可分为(逻辑独立性)和(物理独立性)

算法与数据结构试题及答案

数据结构试卷(一) 一、单选题(每题2 分,共20分) 1.栈和队列的共同特点是( )。 A.只允许在端点处插入和删除元素 B.都是先进后出 C.都是先进先出 D.没有共同点 2.用链接方式存储的队列,在进行插入运算时( ). A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D.头、尾指针可能都要修改 3.以下数据结构中哪一个是非线性结构?( ) A. 队列 B. 栈 C. 线性表 D. 二叉树 4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在 676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。 A.688 B.678 C.692 D.696 5.树最适合用来表示( )。 A.有序数据元素 B.无序数据元素 C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据 6.二叉树的第k层的结点数最多为( ). A.2k-1 B.2K+1 C.2K-1 D. 2k-1 7.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二 分查找,则查找A[3]的比较序列的下标依次为( ) A. 1,2,3 B. 9,5,2,3 C. 9,5,3 D. 9,4,2,3 8.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为 A. O(1) B. O(n) C. O(1og2n) D. O(n2) 9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K) =K %9作为散列函数,则散列地址为1的元素有()个, A.1 B.2 C.3 D.4 10.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。 A.5 B.6 C.7 D.8 二、填空题(每空1分,共26分) 1.通常从四个方面评价算法的质量:_________、_________、_________和_________。 2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。 3.假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J)),则树中所含的结点数 为__________个,树的深度为___________,树的度为_________。 4.后缀算式9 2 3 +- 10 2 / -的值为__________。中缀算式(3+4X)-2Y/3对应的后缀算式 为_______________________________。 5.若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指 针。在这种存储结构中,n个结点的二叉树共有________个指针域,其中有________个指针域是存放了地址,有________________个指针是空指针。 6.对于一个具有n个顶点和e条边的有向图和无向图,在其对应的邻接表中,所含边结点 分别有_______个和________个。 7.AOV网是一种___________________的图。 8.在一个具有n个顶点的无向完全图中,包含有________条边,在一个具有n个顶点的有 向完全图中,包含有________条边。 9.假定一个线性表为(12,23,74,55,63,40),若按Key % 4条件进行划分,使得同一余数的元 素成为一个子表,则得到的四个子表分别为____________________________、___________________、_______________________和__________________________。

2-实验二MySQL数据库操作实验

实验二 MySQL数据库操作实验 实验目的: 1、掌握MySQL数据库的安装方法 2、掌握MySQL数据库的使用 3、熟悉数据库管理工具的使用 实验要求: 1、利用MySQL命令创建数据库和相应的数据库表,并能向数据库表中插入数据 记录和相应的数据库操作。 2、利用Navicat for MySQL建数据库和相应的数据库表,并能向数据库表中插 入数据记录和相应的数据库操作。 3、保存和导入数据库 4、编程查询显示数据库表中的所有记录,可以选择以下添加的任意一个数据库 表的记录。 实验容: 1、安装MySQL数据库 安装MySQL可以参照文档“MySQL 5 安装.doc”,安装MySQL并进行配置,安装成功后,即可操作管理数据库。 方法一: 从开始菜单→MySQL→MySQL Server5.0→MySQL Command Line Client,打开控制台界面,提示输入密码,密码输入成功后,登录MySQL数据库,如下图2.1所示。

图2.1 登录MySQL 服务器 方法二:将MySQL的安装路径下的bin目录添加到环境变量path中,打开控制台命令,输入mysql –uroot –p,在提示符下输入密码,登录MySQL服务器,如下图2.2所示。 图2.2 登录MySQL服务器 2、安装Navicat for MySQL Navicat for MySQL 是一款强大的MySQL数据库管理和开发工具,Navicat 使用很好的GUI,可以使用户采用一种安全和更容易的方式创建、组织、存取和共享信息。 安装Navicat_for_MySQL_10.1.7,安装向导启动界面如下图2.3所示。

数据结构与算法复习题库含答案

数据结构复习题 第一章概论 一、选择题 1、研究数据结构就是研究( D )。 A. 数据的逻辑结构 B. 数据的存储结构 C. 数据的逻辑结构和存储结构 D. 数据的逻辑结构、存储结构及其基本操作 2、算法分析的两个主要方面是( A )。 A. 空间复杂度和时间复杂度 B. 正确性和简单性C. 可读性和文档性 D. 数据复杂性和程序复杂性 3、具有线性结构的数据结构是( D )。 A. 图 B. 树 C. 广义表 D. 栈 4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。 A. 可执行性、可移植性和可扩充性 B. 可执行性、有穷性和确定性 C. 确定性、有穷性和稳定性 D. 易读性、稳定性和确定性 5、下面程序段的时间复杂度是( C )。 fori0;im;i++ forj0;jn;j++ a[i][j]i*j; A. Om2 B. On2 C. Om*n D. Om+n 6、算法是( D )。

A. 计算机程序 B. 解决问题的计算方法 C. 排序算法 D. 解决问题的有限运算序列 7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示( C )。 A. On B. Onlog2n C. On2 D. Olog2n 8、下面程序段的时间复杂度为( C )。 i1; whilein ii*3; A. On B. O3n C. Olog3n D. On3 9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的( B )和运算等的学科。 A. 结构 B. 关系 C. 运算 D. 算法 10、下面程序段的时间复杂度是( A )。 is0; whilesn i++;s+i; A. On B. On2 C. Olog2n D. On3 11、抽象数据类型的三个组成部分分别为( A )。 A. 数据对象、数据关系和基本操作 B. 数据元素、逻辑结构和存储结构 C. 数据项、数据元素和数据类型 D. 数据元素、数据结构和数据类型 12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是(D)。

比对试验数据处理的3种方法

比对试验数据处理的3种方法 摘要引入比对试验的定义,结合两个实验室进行的一组比对试验数据实例,介绍比对试验数据处理的3种基本方法,即(:rubbs检验、F检验、t检验,并阐述三者关系。 在实验室工作中,经常遇到比对试验,即按照预先规定的条件,由两个或多个实验室或实验室内部 对相同或类似的被测物品进行检测的组织、实施和评价。实验室间的比对试验是确定实验室的检测能 力,保证实验室数据准确,检测结果持续可靠而进行的一项重要的试验活动,比对试验方法简单实用,广 泛应用于企事业、专业质检、校准机构的实验室。国家实验室认可准则明确提出,实验室必须定期开展 比对试验。虽然比对试验的形式较多,如:人员比对、设备比对、方法比对、实验室间比对等等,但如何 将比对试验数据归纳、处理、分析,正确地得出比对试验结果是比对试验成败的关键。 以下笔者结合实验室A和B两个实验室200年进行的比对试验中的拉力试验数据实例,介绍比对试验数据处理的3种最基本的方法,即格鲁布斯(Grubbs)检验、F检验、t检验。 1 数据来源情况 试样 在实验室的半成品仓库采取正交方法取样,样品为01. 15 mm制绳用钢丝。在同一盘上截取20 段长度为lm试样,按顺序编号,单号在实验室A测试,双号在实验室B测试。 试验方法及设备 试验方法见 GB/T 228-1987,实验室A : LJ-500(编号450);实验室B : LJ-1 000(编号2)。 测试条件 两实验室选择有经验的试验员,严格按照标准方法进行测试,技术人员现场监督复核,确认无误后 记录。对断钳口的试样进行重试。试验时两实验室环境温度(28 T )、拉伸速度(50 mm/min )、钳口距 离(150 mm)相同。 试验数据 测试得出的两组原始试验数据见表to 表1 实验室A,B试验数据

学习18大经典数据挖掘算法

学习18大经典数据挖掘算法 本文所有涉及到的数据挖掘代码的都放在了github上了。 地址链接: https://https://www.doczj.com/doc/261061558.html,/linyiqun/DataMiningAlgorithm 大概花了将近2个月的时间,自己把18大数据挖掘的经典算法进行了学习并且进行了代码实现,涉及到了决策分类,聚类,链接挖掘,关联挖掘,模式挖掘等等方面。也算是对数据挖掘领域的小小入门了吧。下面就做个小小的总结,后面都是我自己相应算法的博文链接,希望能够帮助大家学习。 1.C4.5算法。C4.5算法与ID3算法一样,都是数学分类算法,C4.5算法是ID3算法的一个改进。ID3算法采用信息增益进行决策判断,而C4.5采用的是增益率。 详细介绍链接:https://www.doczj.com/doc/261061558.html,/androidlushangderen/article/details/42395865 2.CART算法。CART算法的全称是分类回归树算法,他是一个二元分类,采用的是类似于熵的基尼指数作为分类决策,形成决策树后之后还要进行剪枝,我自己在实现整个算法的时候采用的是代价复杂度算法, 详细介绍链接:https://www.doczj.com/doc/261061558.html,/androidlushangderen/article/details/42558235 3.KNN(K最近邻)算法。给定一些已经训练好的数据,输入一个新的测试数据点,计算包含于此测试数据点的最近的点的分类情况,哪个分类的类型占多数,则此测试点的分类与此相同,所以在这里,有的时候可以复制不同的分类点不同的权重。近的点的权重大点,远的点自然就小点。 详细介绍链接:https://www.doczj.com/doc/261061558.html,/androidlushangderen/article/details/42613011 4.Naive Bayes(朴素贝叶斯)算法。朴素贝叶斯算法是贝叶斯算法里面一种比较简单的分类算法,用到了一个比较重要的贝叶斯定理,用一句简单的话概括就是条件概率的相互转换推导。 详细介绍链接:https://www.doczj.com/doc/261061558.html,/androidlushangderen/article/details/42680161 5.SVM(支持向量机)算法。支持向量机算法是一种对线性和非线性数据进行分类的方法,非线性数据进行分类的时候可以通过核函数转为线性的情况再处理。其中的一个关键的步骤是搜索最大边缘超平面。 详细介绍链接:https://www.doczj.com/doc/261061558.html,/androidlushangderen/article/details/42780439 6.EM(期望最大化)算法。期望最大化算法,可以拆分为2个算法,1个E-Step期望化步骤,和1个M-Step最大化步骤。他是一种算法框架,在每次计算结果之后,逼近统计模型参数的最大似然或最大后验估计。

数据库性能测试方法实例讲解

网上订购地址:https://www.doczj.com/doc/261061558.html,/39876

第4章应用实例讲解 4.1 一种特殊的数据库性能测试方法 很多同志在进行数据方面性能测试时束手无策,前面在第二章的第二节我们已经介绍了如何应用ODBC协议录制LoadRunner 8.0自身带的“Flights-ODBC_Access”例子。这里作者为您提供另一种简便的方法。问题描述:一个面向全国各个中小学的信息管理系统,随着系统被广泛的应用,访问人数的急剧增加、数据量也在飞速增长,如何为用户提供方便、快捷的应用呢? 4.1.1 数据库集群项目背景介绍 经过公司相关技术人员的讨论,决定采用数据库的集群技术来解决这些问题,将先前1台数据应用服务器扩展为3台。数据库为Mysql,如果您关心数据库的集群技术,请查阅相关资料,在这里不再赘述。实施的整体思路是这样。由于操作人员主要是进行数据的插入工作,在某一段时间内操作人员比较集中,数据量也较大,为了估计集群后会给性能带来多大的提升,我们分别部署了两套运行环境,一套是先前的单一数据库应用服务器环境,另外一个则是三台数据库服务器进行集群。为了记录用户并发插入大数据量系统的响应时间,在相关表中添加了日期时间型字段,记录插入首条和末尾记录的时间,这样,末尾时间减去首条记录插入时间,就是多用户并发插入大批量数据的执行时间了。实施过程如下:第一步,数据库管理员用Java写了一段代码: import java.sql.*; public class testclus { public static void main(String[] args) { //如果传入参数个数不等于2,则给出提示信息"调用:java testclus ip:port recordcnt" if (args.length!=2) { System.out.println("调用:java testclus ip:port recordcnt"); return; } //根据传入参数,动态建立连接字符串 String URL = "jdbc:mysql://" +args[0]+"/testclus?characterEncoding=gbk";

算法与数据结构习题

《算法与数据结构》习题1 第一部分 一、单项选择题 1.()二叉排序树可以得到一个从小到大的有序序列。 A、先序遍历 B、中序遍历 C、后序遍历 D、层次遍历 2.设按照从上到下、从左到右的顺序从1开始对完全二叉树进行顺序编号,则编号为i 结点的左孩子结点的编号为()。 A、2i+1 B、2i C、i/2 D、2i-1 3.设指针变量p指向单链表中结点A,若删除单链表中结点A,则需要修改指针的操作序 列为()。 A、q=p->next;p->data=q->data;p->next=q->next;free(q); B、q=p->next;q->data=p->data;p->next=q->next;free(q); C、q=p->next;p->next=q->next;free(q); D、q=p->next;p->data=q->data;free(q); 4.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得 到序列为()。 A、BADC B、BCDA C、CDAB D、CBDA 5.设某有向图的邻接表中有n个表头结点和m个表结点,则该图中有()条有向边。 A、n B、n-1 C、m D、m-1 6.设二叉排序树中有n个结点,则在二叉排序树的平均平均查找长度为()。 A、O(1) B、O(log2n) C、O(nlog2n) D、O(n2) 7.设有序表中有1000个元素,则用二分查找查找元素X最多需要比较()次。 A、25 B、10 C、7 D、1 二、填空题 1.设指针变量p指向双向链表中的结点A,指针变量s指向被插入的结点X,则在结点A 的后面插入结点X的操作序列为______=p;s->right=p->right;______=s; p->right->left=s;(设结点中的两个指针域分别为left和right)。 2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为______。 3.设一棵三叉树中有50个度数为0的结点,21个度数为2的结点,则该二叉树中度数为 3的结点数有______个。 4.后缀算式9 2 3 + - 10 2 / -的值为______。中缀算式(3+4X)-2Y/3对应的后缀算式 为______。 5.设初始记录关键字序列为(K1,K2,…,Kn),则用筛选法思想建堆必须从第______个元 素开始进行筛选。 6.对于一个具有n个顶点和e条边的有向图和无向图,在其对应的邻接表中,所含边结点

报表测试方法

报表的测试: 报表的测试主要分为以下几个方面:界面,安全性,准确性,展示速度(性能) 数据统计方面 1、报表统计数据的正确性; 2、报表统计数据的完整性; 3、报表统计数据的合法性;比如,统计金额字段需求要求有“$”等; 报表格式 1、表头字段表示的正确性; 2、表头字段表示的完整性; 3、表头字段表示的字体,字号,美观程度; 4、各统计字段的显示是否满足需求;比如:数据过长时要求折行还是缩小; 5、页眉和页角的表示; 报表的预览和印刷 1、预览中的显示完整性; 2、多页情况下,第2页的表头显示; 3、能否实现需求要求的特定印刷情况;(比如,印刷使用指定的模板) 4、预览后印刷; 5、不预览,直接印刷 6、需求规定各类打印机的测试; 报表测试主要分为:报表界面测试、报表安全性、报表准确性、报表展示速度(也就是性能)。 数据准确性测试,带有报表测试的系统分为两类,一类是业务系统中,带有统计分析功能模块,该模块中包含分析报表,这个系统的主体是业务系统,报表是为办理业务的而提供帮助的。 比如说,应年检统计报表,某月应交罚款车辆统计报表,这样的报表数据准确与否,可通过增加、删减、修改相关业务或相关业务的参数,查看统计报表数据变化,检查数据准确性。 另一类是系统只有统计功能,就是我说的数据仓库展现这类,它与业务系统分离,并且经过多层处理,比如数据仓库的数据,经过抽取,清洗,展现前会经过数据挖掘,数据再处理,有些字段在原始数据表中根本就没有。这样的数据准确性测试比较复杂,当然检查出数据错误,修改定位也是很不容易的。 从整个项目节约成本看,逐层测试效果是最好的。完全修改率也是最高的。 首先建立测试数据模型,模拟所有应用表,建立简单易跟踪的数据用例,底层的数据表测试,方法很原始,嘿嘿,通过SQL语句和手工计算,对数据进行比对。对系统中的报表数据准确性测试方法较为灵活, ①系统中报表重叠的进行比对

数据挖掘分类算法介绍

数据挖掘分类算法介绍 ----------------------------------------------------------------------------------------------------------------------------- 分类是用于识别什么样的事务属于哪一类的方法,可用于分类的算法有决策树、bayes分类、神经网络、支持向量机等等。 决策树 例1 一个自行车厂商想要通过广告宣传来吸引顾客。他们从各地的超市获得超市会员的信息,计划将广告册和礼品投递给这些会员。 但是投递广告册是需要成本的,不可能投递给所有的超市会员。而这些会员中有的人会响应广告宣传,有的人就算得到广告册不会购买。 所以最好是将广告投递给那些对广告册感兴趣从而购买自行车的会员。分类模型的作用就是识别出什么样的会员可能购买自行车。 自行车厂商首先从所有会员中抽取了1000个会员,向这些会员投递广告册,然后记录这些收到广告册的会员是否购买了自行车。 数据如下:

在分类模型中,每个会员作为一个事例,居民的婚姻状况、性别、年龄等特征作为输入列,所需预测的分类是客户是否购买了自行车。 使用1000个会员事例训练模型后得到的决策树分类如下:

※图中矩形表示一个拆分节点,矩形中文字是拆分条件。 ※矩形颜色深浅代表此节点包含事例的数量,颜色越深包含的事例越多,如全部节点包含所有的1000个事例,颜色最深。经过第一次基于年龄的拆分后,年龄大于67岁的包含36个事例,年龄小于32岁的133个事例,年龄在39和67岁之间的602个事例,年龄32和39岁之间的229个事例。所以第一次拆分后,年龄在39和67岁的节点颜色最深,年龄大于67岁的节点颜色最浅。 ※节点中的条包含两种颜色,红色和蓝色,分别表示此节点中的事例购买和不购买自行车的比例。如节点“年龄>=67”节点中,包含36个事例,其中28个没有购买自行车,8个购买了自行车,所以蓝色的条比红色的要长。表示年龄大于67的会员有74.62%的概率不购买自行车,有23.01%的概率购买自行车。 在图中,可以找出几个有用的节点: 1. 年龄小于32岁,居住在太平洋地区的会员有7 2.75%的概率购买自行车; 2. 年龄在32和39岁之间的会员有68.42%的概率购买自行车; 3. 年龄在39和67岁之间,上班距离不大于10公里,只有1辆汽车的会员有66.08%的概率购买自行车;

数据结构与算法复习题及参考答案

复习题集─参考答案 一判断题 (√)1. 在决定选取何种存储结构时,一般不考虑各结点的值如何。 (√)2. 抽象数据类型与计算机部表示和实现无关。 (×)3. 线性表采用链式存储结构时,结点和结点部的存储空间可以是不连续的。 (×)4. 链表的每个结点中都恰好包含一个指针。 (×)5.链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。(×)6. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。 (×)7. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 (×)8. 线性表在物理存储空间中也一定是连续的。 (×)9. 顺序存储方式只能用于存储线性结构。 (√)10.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。 (√)11.对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。 (√)12.栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。 (√)13.两个栈共享一片连续存空间时,为提高存利用率,减少溢出机会,应把两个栈的栈底分别设在这片存空间的两端。 (×)14.二叉树的度为2。 (√)15.若二叉树用二叉链表作存贮结构,则在n个结点的二叉树链表中只有n—1个非空指针域。 (×)16.二叉树中每个结点的两棵子树的高度差等于1。 (√)17.用二叉链表法存储包含n个结点的二叉树,结点的2n个指针区域中有n+1个为空指针。 (√)18.具有12个结点的完全二叉树有5个度为2的结点。 (√)19.二叉树的前序遍历序列中,任意一个结点均处在其孩子结点的前面。 (×)20.在冒泡法排序中,关键值较小的元素总是向前移动,关键值较大的元素总是向后移动。 (×)21.计算机处理的对象可以分为数据和非数据两大类。[计算机处理的对象都是数据] (×)22.数据的逻辑结构与各数据元素在计算机中如何存储有关。 (×)23.算法必须用程序语言来书写。 (×)24.判断某个算法是否容易阅读是算法分析的任务之一。 (×)25.顺序表是一种有序的线性表。[任何数据结构才用顺序存储都叫顺序表] (√)26.分配给顺序表的存单元地址必须是连续的。 (√)27.栈和队列具有相同的逻辑特性。[它们的逻辑结构都是线性表] (√)28.树形结构中每个结点至多有一个前驱。 (×)29.在树形结构中,处于同一层上的各结点之间都存在兄弟关系。 (×)30.如果表示图的邻接矩阵是对称矩阵,则该图一定是无向图。 (×)31.如果表示图的邻接矩阵是对称矩阵,则该图一定是有向图。 (×)32.顺序查找方法只能在顺序存储结构上进行。 (×)33.折半查找可以在有序的双向链表上进行。

数据库测试方法介绍

数据库测试方法介绍(2009-10-12 17:05:17) 标签:杂谈分类:软件测试发布: 2009-9-03 13:18 | 作者: webmaster | 来源: 本站原创 | 查看: 59次 | 进入软件测试论坛讨论 数据库测试方法经验介绍软件测试 随着软件业的迅猛发展,我们的开发也从以前的单层结构进入了三层架构甚至现在多层架构的设计,而数据库从以前一个默默无闻的后台仓库,逐渐成为了数据库系统,而数据库开发设计人员成为了炙手可热的核心人员。以前我们往往把数据库操作写在应用层,从而提高各个模块的独立性和易用性,而现在越来越多的数据库操作被作为存储过程直接放在数据库上进行执行来提高执行效率和提高安全性。 数据库开发既然在软件开发的比重逐步提高,随之而来的问题也突出。我们以前往往重视对代码的测试工作,随着流程技术的日益完善,软件质量得到了大幅度的提高,但数据库方面的测试仍然处于空白。我们从来没有真正将数据库作为一个独立的系统进行测试,而是通过对代码的测试工作间接对数据库进行一定的测试。随着数据库开发的日益升温,数据库测试也需要独立出来进行符合自身特点的测试工作。数据库开发和应用开发并没有实质上的区别,所以软件测试的方法同样适用于数据库测试 从测试过程的角度来说我们也可以把数据库测试分为 系统测试 传统软件系统测试的测试重点是需求覆盖,而对于我们的数据库测试同样也需要对需求覆盖进行保证。那么数据库在初期设计中也需要对这个进行分析,测试.例如存储过程,视图,触发器,约束,规则等我们都需要进行需求的验证确保这些功能设计是符合需求的.另一方面我们需要确认数据库设计文档和最终的数据库相同,当设计文档变化时我们同样要验证改修改是否落实到数据库上。 这个阶段我们的测试主要通过数据库设计评审来实现。 集成测试

测试方法分类

一、基本概念 1、测试用例(案例)主要记录:测试步骤、方法、数据、预期结果的文档,由测试人员在执行测试之前编写的 2、编写用例的方法 (1)等价类划分 (2)边界值 (3)因果图 (4)判定表 (5)正交排列法 (6)场景法 (7)测试大纲法 (8)状态转换图 3、写用例参考什么? (1)文档:需求、开发文档、用户手册 (2)参考已经开发出来的软件 (3)讨论 二、等价类划分 1、应用场合 只要有数据输入的地方,就可以使用等价类划分 把无限多的数据根据需求,划分成多个区域(有效、无效),

从每个区域中选取一个代表性数据进行测试即可 说明: 穷举测试是最全面的测试,但是是不能采用的方法,时间成本太高,编写用例的方法主要解决的问题是如何使用最少的数据,达到最大的覆盖 2、核心概念 (1)有效等价类 对程序规格有效的、合理的输入数据的集合 程序接收到有效等价类,可以正确计算、执行 (2)无效等价类 对程序规格无效的、不合理的输入数据的集合 程序接收到无效等价类,应该给出错误提示,或者根本不允许输入 3、如何使用? 首先明确测试对象—第一个数文本框 说明:在测试第一个数的时候,保证第二个数正确 (1)根据需求,划分等价类 ①有效等价类 -99—99之间的整数 ②无效等价类

A、非整数 B、<-99的整数 C、>99的整数 (2)细化等价类 往往依据的不是字面的需求,而是基于对数据存储方式的深入理解以及数据格式的理解 ①正负数补码计算不一样,有必要把正数、负数单独测试-99—0整数 0—99整数 ②非整数可以进一步细分 小数 字母 汉字 符号 (3)建立等价类表(熟练后直接做该步)

算法与数据结构试题及答案

数据结构模拟试题... 一、简答题(15分,每小题3分) 1.简要说明算法与程序的区别。 2.在哈希表中,发生冲突的可能性与哪些因素有关?为什么? 3.说明在图的遍历中,设置访问标志数组的作用。 4.说明以下三个概念的关系:头指针,头结点,首元素结点。 5.在一般的顺序队列中,什么是假溢出?怎样解决假溢出问题? 二、判断题(10分,每小题1分) 正确在括号内打√,错误打× ( )(1)广义表((( a ), b), c ) 的表头是(( a ), b),表尾是( c )。 ( )(2)在哈夫曼树中,权值最小的结点离根结点最近。 ( )(3)基数排序是高位优先排序法。 ( )(4)在平衡二叉树中,任意结点左右子树的高度差(绝对值)不超过1。 ( )(5)在单链表中,给定任一结点的地址p,则可用下述语句将新结点s插入结点p的后面:p->next = s; s->next = p->next; ( )(6)抽象数据类型(ADT)包括定义和实现两方面,其中定义是独立于实现的,定义仅给出一个ADT的逻辑特性,不必考虑如何在计算机中实现。 ( )(7)数组元素的下标值越大,存取时间越长。 ( )(8)用邻接矩阵法存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小只与图中结点个数有关,而与图的边数无关。 ( )(9)拓扑排序是按AOE网中每个结点事件的最早发生时间对结点进行排序。 ( )(10)长度为1的串等价于一个字符型常量。 三、单项选择题(10分, 每小题1分) 1.排序时扫描待排序记录序列,顺次比较相邻的两个元素的大小,逆序时就交换位置。这是哪种排序方法的基本思想? A、堆排序 B、直接插入排序 C、快速排序 D、冒泡排序 2.已知一个有向图的邻接矩阵表示,要删除所有从第i个结点发出的边,应该: A)将邻接矩阵的第i行删除B)将邻接矩阵的第i行元素全部置为0 C)将邻接矩阵的第i列删除D)将邻接矩阵的第i列元素全部置为0 3.有一个含头结点的双向循环链表,头指针为head, 则其为空的条件是: A.head->priro==NULL B. head->next==NULL C. head->next==head D. head->next-> priro==NULL 4. 在顺序表( 3, 6, 8, 10, 12, 15, 16, 18, 21, 25, 30 ) 中,用折半法查找关键码值11,所需的关键码比

数据库测试5

数据库测试5 姓名: [填空题] * _________________________________ 101 现有"教师"表(教师号、教师名)、"学生"表(学号、学生名)和"课程"表(课程号,课程名)等3个基本情况表。学校中一名教师可主讲多门课程,一名学生可选修多门课程,则主讲教师与学生之间形成了多对多关系。为反映主讲教师与学生之间的关系,在数据库中应增加新的表,下列关于新表的设计中,最合理的设计是()。[单选题] * A、增加两个表:学生-选课表(学号、课程号),教师-任课表(教师号、课程号)(正确答案) B、增加一个表:学生-选课-教师表(学号、课程号、教师号) C、增加一个表:学生-选课-教师表(学号、学生名、课程号、课程名、教师号、教师名) D、增加两个表:学生-选课表(学号、课程号、课程名),教师-任课表(教师号、课程号、课程名) 102 产品表中有日期类型字段"生产日期",要查找在第一季度生产的产品,错误的是()。 [单选题] * A、like "*/[1-3]/*" B、Month([生产日期])>=1 And Month([生产日期])<=3 C、DatePart("q",[生产日期]) = 1 D、1 >= Month([生产日期]) <= 3(正确答案) 103 下列与Access表相关的叙述中,错误的是()。 [单选题] * A、设计表的主要工作是设计表的字段和属性 B、Access数据库中的表是由字段和记录构成

C、Access不允许在同一个表中有相同的数据(正确答案) D、Access中的数据表既相对独立又相互联系 104 在关系A(S,SN,D)和B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则D是A的()。 [单选题] * A、外键(码)(正确答案) B、候选键(码) C、主键(码) D、以上说法都不对 105 下列关于格式属性的叙述中,正确的是()。 [单选题] * A、格式属性影响字段在表中存储的内容 B、可在需要控制数据的输入格式时选用 C、可在需要控制数据的显示格式时选用(正确答案) D、可以设置自动编号型字段的格式属性 106 若要求输入的数据具有固定的格式,应设置字段的属性是()。 [单选题] * A、格式 B、默认值 C、输入掩码(正确答案) D、字段大小 107 在Access数据库中已有"学生"、"课程"和"成绩"表,为了有效地反映3个表之间的联系,在创建数据库时,还应设置的内容是()。 [单选题] * A、表的默认视图 B、表的排序依据 C、表之间的关系(正确答案)

相关主题
文本预览
相关文档 最新文档