- 博客(20)
- 收藏
- 关注
原创 专项练习--排序 数组(3)
在待排序记录已经有序的情况下,执行时间最省的是堆排序。几乎有序时,快排的时间复杂度退化到O(n*n)。无序时,快排才比较省时间O(n*logn)QUDIAN最小字母为A 最大字母为U,若升序排序完成顺序应该是ADINQU两趟排序导致QU是有序的,其他四个字母还无序,选择排序则QU应该在后面,冒泡和堆排序两趟也会使元素到达他最终位置,所以排除...
2020-02-28 13:17:36 430
原创 专项练习--排序 数组(2)
解析:折半查找即二分查找,要求顺序存储,元素有序解析:假设长度为n数组a, 从数组最前(插到a[0]前)到最后(插到a[n-1]后)共n+1种情况,分别需要移动n,n-1,...,0次,每种情况等概率P=1/(n+1), 期望为(n+n-1+...+0)/(n+1) = (1+n)*n/2/(n+1)=n/2解析:冒泡排序:将最大值放到末尾,一...
2020-02-28 12:51:14 319
原创 LeetCode编程题
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。import java.util.Arrays;class Solution66 { public static void main(String[] args){ int[] ...
2020-02-23 13:15:15 314
原创 专项练习---排序 数组(1)
解析:元素a20表示a[2][0]为第三行第一列的那个元素的地址为560每个元素占4个字节,元素a10表示a[1][0]第二行第一列的那个元素的,已知二维数组为A10×10,所以a[2][0]和a[1][0]相距10个元素,所以4*10=40个字节答案:则元素a10的地址位 520. 解析: 二叉排序树的概念: 二叉排序树是一种动态树表。 二叉排序树的定义:...
2020-02-23 12:35:14 313
原创 二维数组
二维数组:一维数组的定义是:数组就是一系列空间大小相等且地址连续的一片存储空间 int[ ] 那么什么叫二维数组呢?int[ ][ ]二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称为方阵。对称矩阵a[i][j] = a[j][i],对角矩阵:n阶方阵主对角线外都是零元素。所...
2020-02-20 14:56:45 2037
原创 第五章典型习题
典型习题集:数组长度不固定需要读取一个数据数组扩容填入数据数据填入之后进行排序然后遍历数组依次判断数据的个数连续相import java.util.*;class Ds5_01{ public static void main(String[] args){ //1.获取用户输入的数据 动态的扩容数组填充数据 Scanne...
2020-02-20 14:28:36 340
原创 Java数组的排序操作
选择排序:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾当前元素和之后所有元素进行比较,如果当前者大于后者则交换位置上述一串数字“1 2 9 8 7 5 6 4 3”进行排序,如果按照默认从小到大的排列方式便是“ 1 2 3 4 5 6 7 8 9 ”那么如何通过选择排...
2020-02-16 19:30:51 353
原创 数组的扩容
数组的扩容:数组:数组是用于储存多个相同类型数据的集合。当数组的长度被定义完成以后,那么便是不可变的,换句话说,当你家里的房间都修好了以后,房间的整体容纳量是不可改变的,那么在这个时候,如果说你家现在降临了一位新生命,是不是就需要一个空间来容纳,这个时候该怎么办呢???这里就该用上数组的扩容了,数组扩容的意思是什么呢?就相当于,你家重新修了一个房子,或者重新买了房子,那么现在这...
2020-02-16 12:42:18 1612
原创 数组
数组:所谓数组,是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。数组的定义:之前在定义数据的时候,大部分都是用变量来存储数据如果我们的程序中出...
2020-02-15 15:28:44 225
原创 第四章典型练习题
定义函数,题目规定使用public static int sunDigits(long n){}开头import java.util.Scanner;class Ds4_01{ public static void main(String[] args){ //1.先输入一个数字 Scanner scanner=new Scanner...
2020-02-15 15:07:52 349
原创 函数
Java函数函数的定义:为什么存在函数这位个概念,对于函数来说,函数主要解决的是那些重复的且具有独立功能的代码段,避免主函数内容过于长,代码段过于冗余,将这些具有独立功能的代码可以进行再次封装 封装出来的东西就成为是函数,很明先的优势,降低了代码冗余复用函数即可,降低了主函数的代码量,将主函数进行适当的拆分,以便内存优化,就是将函数模块化。函数格式:访问权限 函数类型 返回值类型 函...
2020-02-15 14:16:57 212
原创 Java中的汉诺塔
让我们先来看看什么是汉诺塔!!!!法国数学家爱德华·卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都...
2020-02-15 13:33:38 385
原创 第三章典型习题集
3.1(代数:解一元二次方程)可 以 使 用 下 面 的 公 式 求 一 元 二 次 方 程 的 两 个 根:b*b-4*a*c 称作一元二次方程的判别式。如果它是正值,那么一元二次方程就有两个实数根。如果它为0, 方程式就只有一个根。如果它是负值,方程式无实根。 编写程序,提示用户输入a,b,c的值,并且显示基于判别式的结果。如果这个判别式为正,显示两个根。如果判别式为 0, 显示一...
2020-02-15 13:10:55 1228
原创 循环结构
循环结构:为什么会有循环结构呢,在编写代码的时候你是否有这种感觉,一段代码要重复非常多的次数,然而他的内容却是一样的,就算可以复制粘贴,但是总觉得这样的代码看起来不太美观,看起来很费劲,所以为了解决这个问题便有了循环结构,他很简单的解决了重复执行代码的问题。根据是否已知循环重复次数的情况下,循环结构可以划分为for循环和while循环,已知循环重复次数采用for循环,不知重复次数但是已...
2020-02-11 16:50:53 345
原创 流程控制语句
顺序结构:代码从主函数开始逐行向下运行,也是一种宏观的代码运行结构就是基本上每个代码都可以看做是顺序结构,从上到下的运行,一个大范围。选择结构:分为if语句和switch语句if语句:基本格式if(条件表达式){ 当条件为true时执行的代码;}else{ 当条件为false时执行的代码;}if-else-if语句,从代码A开始,向...
2020-02-11 16:31:43 232
原创 Java中的运算符
运算符的分类算术运算符 比较运算符 赋值运算符 逻辑运算符 位运算符 三目运算符算数运算符: 加法运算:如果+号的两边都是数字的话,那么这个+表示的数学上的加法,如果+号的两边,只有有一个字符串,那么这个 +表示的是字符串连接符除法运算:如果两边都是整数 结果就是整数(整除)如果两...
2020-02-11 16:09:44 149
原创 Java中的进制转换
首先来说,为什么会有进制的相互转换.....大家平常所见到的数字,1,2,3....等等这些数字,从字面意思来理解也就代表1,2,3,类似于一种数学符号,让人一看到,就可以知道这是阿拉伯数字,代表着什么....对于计算机而言,是无法识别这样的数字的,计算机语言,在前面我也说过,值可以识别二进制数字串,比如0000 0001以上的数字“0000 0001”这个是代表什么呢?这里涉及...
2020-02-11 15:30:58 249
原创 基本数据与计算——————习题
(将摄氏溫度转换为华氏溫度)编写程序,从控制台读人 double 型的摄氏温度,然后将其转换为 华氏温度,并且显示结果。转换公式如下所示:华氏温度=(9/5)*摄氏温度+32特别注意哦:Java中 9/5 的结果是1,但是9.0/5的结果是1.8import java.util.Scanner;public class Temperature{ public stat...
2020-02-08 20:53:36 993
原创 JAVA中的基本数据-------以及对指针的认识
关键字定义:一些被Java语言赋予了特殊含义的单词,不能随意使用。(用户只能按照系统规定的方式去使用,不可以自己定义哦!)例如:int(整型数据类型) double (双精度型数据类型)long(长整型数据类型) boolean(布尔数据类型) short(短整型数据类型) byte(字节数据类型) float(浮点型) char(字...
2020-02-07 21:14:27 624
原创 初识JAVA
初识JAVA编程语言计算机程序称为软件,(根据用户需求然后所开发出来的一系列应用程序)是告诉计算机该做什么的指令,然计算机清楚明白用户的需求。计算机不理解人类的语言,所以要想计算机识别人类的想法,计算机程序必须使用计算机可以使用的语言编写。现在有数百种编程语言对人们来说,开发它们使编程过程更容易。但是,所有的程序都必须转换成计算机可以执行的指令。计算机语言-机器语言(二进制)汇编语言...
2020-02-05 17:50:54 400
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人