- 博客(14)
- 收藏
- 关注
原创 剑指offer.46.圆圈中最后剩下的数
剑指offer.46.圆圈中最后剩下的数 题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数…这样下去…直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵的“名侦探柯南”典藏版(名额有
2020-09-18 17:40:25
178
原创 MySQL安装教程
MySQL安装教程 下载得到zip压缩包 解压到想要安装的目录,注意路径中不要有中文,如D:\soft\AAAit\mysql\mysql-5.7.31 添加环境变量:我的电脑-属性-高级-环境变量,选择PATH,添加D:\soft\AAAit\mysql\mysql-5.7.31\bin 创建my.ini文件,并编辑内容如下 [mysqld] basedir=D:\\soft\AAAit\mysql\mysql-5.7.31\ datadir=D:\\soft\AAAit\mysql\my
2020-09-15 10:38:04
128
原创 剑指offer.40.数组中只出现1次的数字
剑指offer.40.数组中只出现1次的数字 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 代码实现 //num1,num2分别为长度为1的数组。传出参数 //将num1[0],num2[0]设置为返回结果 public class Solution { public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) { int mask = 0;
2020-09-14 18:18:18
208
原创 剑指offer.36.两个链表的第一个公共结点
剑指offer.36.两个链表的第一个公共结点 题目描述 输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的) 代码实现 /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { pub
2020-09-14 16:30:42
107
原创 剑指offer.25.复杂链表的复制
剑指offer.25.复杂链表的复制 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 代码实现 class RandomListNode { int label; RandomListNode next = null; RandomListNode random = null;
2020-09-10 16:28:15
98
原创 剑指offer.11.二进制中1的个数
剑指offer.11.二进制中1的个数 题目描述 输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。 代码实现 import java.util.ArrayList; public class Solution { public int NumberOf1(int n) { // 法1 int cnt = 0; int mark = 1; while (mark != 0) { cnt +=
2020-09-08 15:26:20
104
原创 剑指offer.29.最小的k个数
剑指offer.29.最小的k个数 题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。 代码实现 import java.util.ArrayList; public class Solution { public ArrayList<Integer> GetLeastNumbers_Solution(int [] input, int k) { ArrayList<Integer&g
2020-09-07 15:28:43
133
原创 剑指offer.28.出现次数超出一半的数
剑指offer.28.出现次数超出一半的数 题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 代码实现 public int MoreThanHalfNum_Solution(int [] array) { int num = 0, cnt = 0; for (int i = 0; i < arra
2020-09-06 16:24:07
100
原创 LeetCode.32.最长有效括号
题目描述 给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。 示例 1: 输入: “(()” 输出: 2 解释: 最长有效括号子串为 “()” 示例 2: 输入: “)()())” 输出: 4 解释: 最长有效括号子串为 “()()” 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/longest-valid-parentheses 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 代码实现 //
2020-07-26 12:16:38
104
原创 LeetCode.31.下一个排列
题目描述 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。 1,2,3 → 1,3,2 3,2,1 → 1,2,3 1,1,5 → 1,5,1 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/next-permutation 著作权归领扣网络所有。商
2020-07-18 11:44:55
154
原创 集合类
Java集合类 0. 学习目标 会使用集合存储数据 会遍历集合,把数据取出来 掌握每种集合的特性 0. 集合的框架 1. Collection 1.1 概述 collection是所有单列集合的最顶层的接口,定义了所有单列集合共性的方法 1.2 常用方法 方法 返回类型 功能 add(E e) boolean 添加元素 clear() void 清空集合 remove(E e) boolean 移除元素 contains(E e) boolean 判断是否包含元素 isE
2020-07-16 09:09:53
178
原创 LeetCode.29.两数相除
题目描述 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/divide-two-integers 著作权归领扣网络所有
2020-07-15 21:21:15
107
原创 Java数组
学习笔记之Java基础——数组 1.数组概述 数组是相同类型数据的有序集合 关键词:相同类型;有序 每个数据成为元素,数组元素可通过下标访问 2.数组声明创建 数组的声明与创建 // 数组的声明 // type[] name; 首选声明方法 // type name[]; int[] nums1; int nums2[]; // 数组的创建 // type[] name = new type[size]; int[] nums3 = new int[100]; 数组的长度:arrays.le
2020-06-19 10:45:10
106
原创 Java方法
学习笔记之Java基础——方法 1.所谓方法 Java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则 1个方法只完成1个功能,有利于后期的扩展 2.方法的定义 方法包含一个方法头和一个方法体 {修饰符} 返回值类型 方法名({参数类型 参数名}) { ... 方法体 ... return 返回值 } exp: public static int compare(int a,
2020-06-18 17:00:24
119
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅