计算机二级java经典题目及其解析
计算机java二级题目及其解析
解析:
栈的存储空间为S(1:50),初始状态为top=51,表示栈的可用空间从S(1)到S(50),栈顶指针初始指向S(51)的位置,表示当前栈为空。
经过一系列正常的入栈与退栈操作后,top=50,表示栈顶指针已经向下移动了一个位置,指向了S(50)的位置,也就是说栈中的最后一个元素的位置为S(49),因此栈中的元素个数为:
50 - 49 = 1
因此,栈中的元素个数为1
栈是一种数据结构,类似于我们平时使用的箱子,可以用来存储一些东西。栈有个特点,就是只能从顶部放入元素,也只能从顶部取出元素,类似于箱子的顶盖。
在这个问题中,我们假设栈的存储空间是有限的,最多可以存储50个元素,初始时栈是空的,栈顶指针指向的是存储空间的末尾,也就是第51个位置。
经过一系列正常的入栈和出栈操作,栈中的元素个数不断地发生变化。如果最后栈顶指针的位置变成了50,那么就意味着栈中只有一个元素,因为栈的存储空间是有限的,最多只能存储50个元素,而栈顶指针的位置是表示当前栈中已经存储的元素的个数,所以最终栈中元素的个数为1。
3、设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是
A.R={(1,2),(3,2),(5,1),(4,5)}
B.R={(1,3),(4,1),(3,2).(5,4)}
C.R={(1,2),(2,4),(4,5),(2,3)}
D.R={(1,3),(2,4),(3,5),.(1,2)}
其实很简单,你把每个答案中的第一个元素集合取出来,比如A:(1,2),先写下来就是12,然后看后面的(3.4),在1,2中找不到前驱和后继,只能和1,2暂时先并列,然后是5,1,这里我们已经写过12了,那么5在1前面就是512,但是34要单排,所以A就是两个根节点3和5。两个顺序是512,34。同理B就是54132;C是:123和45;D是135,24所以B正确。
在以下排序方法中,最坏情况下时间复杂度最小的是
A、冒泡排序B、快速排序c.堆排序D、希尔排序
排序方法 时间复杂度
冒泡排序 O(n^2)
选择排序 O(n^2)
插入排序 O(n^2)
快速排序 O(n^2)
归并排序 O(nlogn)
堆排序 O(nlogn)
c
下列各序列不是堆的是
A.(91,85,53,36,47,30,24,12)
B.(91,85,53,47,36,30,24,12)
C.(47,91,53,85,30,12,24,36)
D.(91,85,53,47,30,12,24,36)
你应该是理解错题意了,首先,大根堆是一个完全二叉树,根节点大于左右节点,这个性质你知道吧,然后来看选项A:91为根节点下面挂两个子节点8553,。然后以85为根节点,下面挂两个子节点36,47,以53为根节点,下面挂两个子节点30,24。。。。以此类推,大概是这么个流程吧。选项C一样。
c
完全二叉树是一种特殊的二叉树,它的每一层都是从左到右填满的,除了最后一层可能不满。
深度为5的完全二叉树的结点数最少是16,最多是31。所以,深度为5的完全二叉树的结点数不可能是15或者32。
a
前序遍历:根结点 —> 左子树 —> 右子树;从左往右,顺着母节点向下遍历,单个母节点遍历完再往右遍历另一个母节点
中序遍历:左子树—> 根结点 —> 右子树;从最左边的结点开始,从左到右遍历
后序遍历:左子树 —> 右子树 —> 根结点;从最左边的结点开始,单个母节点,从下往上遍历,直到此母节点遍历完
例
前序遍历:1 2 4 5 7 8 3 6
中序遍历:4 2 7 5 8 1 3 6
后序遍历:4 7 8 5 2 6 3 1
A:二叉链表是一种表示二叉树的链式存储结构,它的每个结点有三个域:数据域和左右指针域。而有两个指针域的链表并不一定是二叉链表,因为它的两个指针域可能不是指向左右孩子,而是指向其他结点或者为空。所以,二叉链表是有两个指针域的链表的一种特殊情况,但并不等同于有两个指针域的链表。
B:循环链表是链式存储结构,循环队列是线性存储结构,
C:双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱
结点的度:度为2的结点引出两条边,度为1的结点引出一条边,度为0的结点没有边,边数为2 a + b 2a+b2a+b
每个子结点都有一条边引向父结点,边数为a + b + c − 1
2a + b = a + b + c − 1,即a=c -1
满二叉树的总结点数为
2
m
−
1
2^{m}-1
2m−1, 叶子结点个数为2
m
−
1
^{m-1}
m−1,m为深度
难题尚未解决的题目
分界线
概念题
Applet是awt的
JApplet是swing的
分界线
操作题
利用JOptionPane类中的各个statc方法来生成各种标准的对话,可以采用showXxxDialog()来显示,如showConfirmDialogO显示确认对话框、showInputDialog显示输入文本对话框、showMessageDialog显示信息对
话框、showOptionDialog()显示选择性的对话框。
解:import javax. swing.JOptionPane; //导入JOptionPane类
JOptionPane. showMessageDialog (null,"欢迎(n你(n参加/nJavaln考试!”);
import java. applet.*;
public class Java l extends Applet
g.drawstring(”欢迎你来参加Java 语言考试!”
25.25);
javax.swing是sun为我们提供的一个包,包中有一个
类叫JoptionPane。所以第一空填swing。
看判断,相反的判断写相反的结果
根据对话框的用途,可以将JOptionPane对话框分为4种类型:
1)showMessageDialog:向用户显示一些消息。
2)showConfirmDialog:问一个要求确认的问题并得
到yes/no/cancel响应。
3)showInputDialog:提示用户进行输入。
4)showOptionDialog:可选择的对话框。
import javax. swing. JOptionPane;
output = output + “sl equals “hello”\n”;
每个程序开始都有 public class 类名,所以第一空
填"class"。
第三空输出结果为 +b
class
略
+b
文件开始定义mina函数,所以第一空
填"main”。String类中常用的成员方法中,方法length(
的功能是返回字符串的长度,所以第二空
填"string.length()”。charAt()方法返回指定索引处的
char值。索引范围是从o到lengthO-1,所以第三空
填"charAt"。
main
string.length()
charAt
第一空中创建一个整数数组对象,定位的是int型
anArray=new int[10];
将iava.io包里的所有接口或类都导入到iavaBean中
所以第一问填"io”。
为了明确指出一个方法不捕获某类异常,而让调用该方法的其他方法去捕获该类异常,可以在声明方法时,使
用throws可选项,以抛出该类异常,根据程序第一空后的Exception可知,第二空填"throws”。
变量year为int类型,变量s为String类型;如果要将变量s赋值给变量year,必须先将变量s转换为int类型,所以第四空为"s"。
io
throws
s
io是input out输入输出流,所以第一空填"io”。
程序定义变量sum的作用是存放偶数之和,需要先给其
赋初值0,所以第二空填"sum=o”
当从键盘输入5个数之后,需要通过循环语句将其读
人,:并转换成nt类型依次赋值给变量x,所以第三空填”
<=5"。
由于程序要求”计算并打印所输人数中的偶数之和”,
那么第三空所在的语句的作用就是判断输入的数是否为
偶数,所以第四空为"x%2==0”
io
sum=0
<=5
x%2==0
当从键盘输入5个数之后,需要通过循环语句将其读
入,并转换成让t类型依次赋值给变量x,所以第一空填
<=5"。
Integer类的静态方法parseIntO的作用是将其它数据
类型转换成整型,所以第二空填"parseInt"。
通过语句“if(max<x)”可知,第三空是将if语
句对比出的较大的整数赋值给变量max,所以第三空
为"max=x"。
首先,程序定义并初始化一维数组scores,在Java中
定义并创建一个数组对象的方式是:type[] arrayName=new type[arraySize];所以第一空填“int []”。
然后,程序通过一个for循环来找出数组scores中的最大值,因为数组scores的数组元素有5个,元素下标最大为4(即:scores[o]、scores[l]、scores[2]、scores[3]、scores[4]),所以第二空填“i<=4”;
第四空填else if
参考来源
设数据元素的集合D={ 1,2,3,4,5 },则满足下列关系R的数据结构中为线性结构的是_百度知道
下列各序列中不是堆的是()(A)(91,85,53_百度题库
(75条消息) 堆(C语言)_堆c语言_过客WZX的博客-CSDN博客
【数据结构】二叉树节点的度_一拳Marx的博客-CSDN博客
二叉树遍历(前序、中序、后序、层次遍历、深度优先、广度优先)_二叉树的先序,中序,后序遍历_Yadoer的博客-CSDN博客
总结
概念题背熟就删除
难题尚未解决的题目搞懂就写思路和解题原理
概念题自己做一遍,错了再记录
根据众多例题来总结知识点来归纳题型,知识点,例题,解析,整理属于自己的笔记
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)