自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 删除排序数组中的重复项(双重循环)

题目描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例:题目分析:该题使用双重循环较为通俗易懂,外层循环是遍历每一个元素,判断其与之后一个元素大小是否相等,若相等则进入内层循环,以遍历到的这个元素为切点,将其后面的元素都往前移动一位,这样便可将...

2019-10-09 21:17:41 530

原创 web开发环境以及入门

最近在学web开发技术,准备之后自己制作网页。编译环境编译环境我使用的是Notepad++,该编译软件在编译时会有关键字提示以及报错提示,因此用起来会非常方便。...

2019-09-19 19:46:13 381

原创 Java对于字符串的相应操作

Java中对于字符串的操作主要包括查看长度、替换、查看指定字符下标、查看指定位置字符等。查看长度:int Length = str.length();//记录字符串str的长度 查看指定字符下标:int num = str.indexOf("+");//将“+”元素的下标存储到num中查看指定位置字符:char a = str.charAt(2);//将下标为2的字符赋...

2019-09-14 12:19:39 161

原创 Java输入输出语法(控制输出的小数位数)

对于一个数组,通过键盘对其进行赋值int[] array = new int [3];Scanner sc = new Scanner(System.in);for(int i = 0; i < 3; i++) { array[i] = sc.nextInt();//如果是其他类型,则将Int换成其他类型例如:nextDouble等,或者直接用next()}retur...

2019-09-13 15:24:22 1146

原创 合并K个排序链表(递归)

题目描述:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。题目分析:该题我的思路是运用递归思想,将每个链表的头结点存储的整数值进行比较,最小的存到定义的list1节点中,然后再调用函数进行下一次比较。代码展示:/** * Definition for singly-linked list. * public class ListNode {...

2019-09-11 22:40:21 521

原创 List和ArrayList区别及用法

含义:List是一个接口,而ArrayList是List的实现类。因此List不能作为定义一个实例对象,只能作为引用。例如:List list1 = new List();//这种定义语句就是错误的而像这种List list2 = new ArrayList();//这种定义语句就是正确的像这种ArrayList list3 = new ArrayList();//这个语句当然...

2019-09-05 11:37:17 9573 1

原创 三数之和

题目描述:给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ,找出所有满足条件且不重复的三元组题目分析:该题首先创建一个元素为List的List表,染回对给定数组进行排序,方便之后的数字移位。然后便建立一个双重循环,第一个循环是以三数之和中的第一个数为标志,然后再建立一个while循环,进行该循环的条件是第二个...

2019-09-04 12:05:44 89

原创 两两交换链表中的有序节点

题目描述:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。题目分析:该题如果先确定链表的节点数再进行交换会非常麻烦,因此我们只需通过递归的方法来进行交换。在交换前首先需判断该节点与其之后的节点是否为空,若为空则将head节点直接返回,若均不为空则首先定义一个空节点用来存储交换后的头结点,然后再次调用swapPairs(...

2019-09-01 00:07:11 114

原创 合并两个有序链表

题目描述:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。题目分析:该题最简单的解法为递归法,对给定的两个链表首先判断是否为空,若是那么直接返回;若均不为空则判断两个链表所存储的整数大小,确定了存放顺序后便通过递归进行下一次判断。代码展示:/** * Definition for singly-linked list.&nbsp...

2019-08-13 17:14:05 118

原创 删除链表的倒数第N个节点

题目描述:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。题目分析:该题首先得确定所给链表是否为空以及节点总数,然后确定需要删除的节点是正数第几个,然后再进行删除操作。同时对于特殊长度或特殊位置的节点需要进行单独处理,比如链表为空,或者长度为1,删除第一个或最后一个节点等。代码展示:/** * Definition for singly-linked li...

2019-08-13 11:39:09 90

原创 最长公共前缀

题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。题目分析:该题首先需确认字符数组中最短的一个元素的长度,然后进行字符串比较,从第一个元素开始依次往后,如果相等则继续,不等则停止。每比较出一个公共元素,便将其添加到目标字符串中。代码展示:class Solution { public String longestCommonPrefi...

2019-08-12 17:23:29 87

原创 整数转罗马数字

题目描述: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5...

2019-08-12 10:46:21 193

原创 盛水最多的容器

题目描述:给定n个非负整数a1,a2,…,an,每个数代表坐标中的一个点(i,ai)。在坐标内画n条垂直线,垂直线i的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 n 的值至少为 2。一. 暴力法题目分析:我们可以通过双重循环计算每两条线构成的容器的盛水量,然后取...

2019-08-10 18:24:39 145

原创 Z字形变化

题目描述:将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如"LCIRETOESIIGEDHN"。题目分析:该题我们可以建立一个字符串数组用于存储每一行的字符串,然后按照从上到下,从下到上,从左到右的顺序进行遍历,最后将字符数组...

2019-08-10 16:54:04 243

原创 判断回文数

回文数题目描述:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。题目分析:该题思路是将数字所有位数保存在一个动态数组中,然后比较前半部分与后半部分对应的位置数字是否相等。同时为了定义动态数组,我使用的是ArrayList,通过add()方法向其中添加元素,然后使用get()方法调用其中元素进行数字的比较。代码展示class Solut...

2019-08-09 17:29:51 123

原创 通过多重循环得到最长回文子串

最长回文子串题目描述:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。通过多重循环题目分析:我们首先需要通过双重循环来确定当前进行判定的子串,为了使测试过程能够更加迅速,子串是由长到短进行判断。确定好之后我们再调用Judge()函数来判定该子串是否为回文子串,若是,则返回true,不是则返回false。最后输出得到的字符串。代码展示:class Sol...

2019-08-08 17:57:11 165

原创 合并两个有序数组并寻找合并数组的中位数

寻找两个有序数组的中位数题目描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。通过循环题目分析:该题可以通过循环比较将两个有序数组合并,然后便能找出中位数。代码展示:class Solution { publ...

2019-08-07 09:55:33 831

原创 通过循环实现整数反转

整数反转题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。同时得注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。通过while循环题目分析:对于输入的数据 x 我们需要进行反转操作,因此需要建立一个 while 循环,循环条件为 x 不为0,同时我...

2019-08-05 23:13:34 1005

原创 通过双重循环求无重复字符的最长子串长度

无重复字符的最长子串题目描述:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。通过双重循环题目分析:该题目要求是要求无重复字符的最长子串,即有两个要求,第一是不能有重复字符,第二是所有字符都得是连续的。因此我需要通过二重循环,从第一个元素开始建立一个外循环,同时从第一个元素开始再建立一个内循环,外循环的元素与内循环的元素进行比较,如果二者一直不相等,则将该段序列长度保存下来...

2019-08-05 16:03:22 122

原创 通过链表实现两数相加

两数相加题目描述:给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。通过递归方法题目分析:该题我们可以通过递归的方法对两个链表相对应位置的数字相加,同时每次递归都会判断链表是否已结束。每当...

2019-08-04 17:21:54 243

原创 通过数组和哈希表实现两数之和

两数之和题目描述: 给定整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案,但是你不能利用这个数组中同样的元素。题目分析:该题我的思路是通过双重循环,求出数组中每两个元素的和,然后与target值比较,如果二者相等那么就将两个数组元素的下标输出。代码展示:class Solution...

2019-08-03 10:30:10 141

原创 关于类的访问权限问题

关于类的访问权限问题

2019-03-03 17:06:28 182

原创 Java静态变量初始化的坑

Java静态变量初始化的坑如图所示的代码class SingleTon { private static SingleTon singleTon = new SingleTon(); public static int count1; public static int count2 = 1; private SingleTon() { ...

2019-03-02 21:55:15 1512

原创 Java对于echo以及grep功能的实现

Java对于echo以及grep功能的实现一. 首先在最开头,需要写上“import java.io.”,Java.io. 便包含了与该代码所涉及所有类名对应的包 。紧接着便是建立一个与与文件名相同名称的类Main,同时建立一个名为mvp的文件,其中内容为“test\nstring\nfor\ngrep”。二. 在文件已经建立好后,首先是要实现echo功能,即将mvp文件中的内容打印出来。于是...

2019-02-16 00:29:23 1290 4

原创 如何配置Java环境以及安装IDEA

如何配置JAVA环境以及安装IDEA

2019-01-25 12:11:30 2194

原创 学习《鸟哥的Linux私房菜》收获与体会

学习《鸟哥的Linux私房菜》收获与体会最近一段时间,我好好看了一下鸟哥所写的Linux私房菜这本书,了解了一下基础的Linux知识,让自己熟悉了一下Linux操作系统的一些基本功能与使用方法,对自己之后使用Ubuntu大有益处。一.对于电脑硬件有了基本的了解一直以来,我对计算机的硬件及其配置都知之甚少,仅仅停留在知道一些名词罢了。而在鸟哥的私房菜开头部分便是对计算机硬件做了一些初步的介绍。...

2018-12-08 21:12:00 1346

原创 安装Ubuntu16.04的曲折过程

安装 Ubuntu16.04的曲折过程作为第一次安装Ubuntu的菜鸟,在安装Ubuntu过程中也是遇到了不少问题,虽然在制作Ubuntu启动盘的时候还算顺利,照着网上的教程较快就安装好了,不过在之后装Ubuntu过程中就可以用一波三折来形容了。以下便是我在安装过程中出现的两个较为严重的错误以及我的解决方法。一.未分配空磁盘给Ubuntu在安装Ubuntu的准备工作也是及其重要的一步便是先在...

2018-12-08 10:49:25 235

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除