- 博客(15)
- 收藏
- 关注
原创 模拟实现java集合类 LinkedList 及其主要方法get set remove size isEmpty contains
package com.qin.DataStructure;public class LinkedList<E> { private class Node{ public E e; public Node next; //构造函数 public Node(E e, Node next){ ...
2019-09-10 16:55:43
257
原创 整数的乘方
剑指offer面试题16数值的整数次方/** * 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方 * 保证base和exponent不同时为0 */public class Power { public static double power(double base, int exponent){ ...
2019-09-05 21:22:28
475
原创 题目
package com.qin.problem;import java.util.ArrayList;import java.util.Comparator;import java.util.Scanner;public class Pinduoduo { public static void main(String[] args) { Scanner in =...
2019-09-01 16:20:06
141
原创 排序总结--java
冒泡排序原始数组:[3,9,-1,10,20]每一趟排序之后,都会有一个最大值排到该次的最后。 /** 冒泡排序 **/ public static void bubbleSort(int[] arr){ boolean flag = true; for (int i = 0 ; i < arr.length - 1 ; i++){ ...
2019-08-26 15:04:12
221
原创 替换 字符串中的空格-- 剑指offer
很多种方式来做这种题目,特来记录一下。public String replaceSpace(StringBuffer str){ int len = str.length(); for(int a=0;a<len;a++){ char ch = str.charAt(a); if(ch==' '){ ...
2019-08-22 20:54:53
172
原创 剑指offer : 查找重复数字
方式一 : 使用hashsetimport java.util.*;public class Solution { public boolean duplicate(int numbers[],int length,int [] duplication) { if(numbers == null || length <= 0) return false; ...
2019-08-20 21:25:22
102
原创 leetcode 459
题目描述:给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。示例 1:输入: “abab”输出: True解释: 可由子字符串 “ab” 重复两次构成。示例 2:输入: “aba”输出: False示例 3:输入: “abcabcabcabc”输出: True解释: 可由子字符串 “abc” 重复四次构成...
2019-08-20 17:09:55
152
原创 合并链表
21 : 合并两个有序的链表`class Solution {public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode dummyHead = new ListNode(-1); // 定义虚拟头节点 ListNode cur = dummyHead; // 定义跟着移动的指针 ...
2019-08-18 16:09:28
104
原创 输出链表的倒数第K个值
方法一:使用快慢指针,因为是倒数第k个节点,如果链表的长度为size,那么正着数应该就是第size-k+1或者写为:size -(k-1)个,那么第一个指针先走k-1步,剩下size -(k-1)步,第二个节点和第一个节点 一起走,这样第一个节点到头了,第二个节点所在的位置就是我们要求的节点了。这里对于我个人来说比较容易晕的一点是 size-k+1,因为是第多少步的,开始计数是从1而不是0开始...
2019-08-08 15:47:25
179
原创 数值的整数次方--剑指0ffer
题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。分析首先想到用递归去做,但是要考虑:e等于0时,不管b是多少,结果总为1b等于1时,不管e是多少,结果总为1当e小于零时,b不能为0e<0时,结果为 1/b^(-e)public class Solution { public double Pow...
2019-06-26 11:50:49
118
原创 青蛙跳台阶--小矩形框覆盖大矩形框--剑指offer算法题
青蛙跳台阶:有两种跳法: 一次跳1个台阶,也可以一次跳2个台阶,这个小青蛙跳n个台阶,共有多少种跳法?有多种跳法:一次可以跳一个台阶,可以跳两个台阶,可以跳3个,…,可以跳n个台阶,这个小青蛙跳n个台阶共有多少种跳法?分析第一种情况:n=1时,显然只有一种跳法 f(1) = 1n = 2时,可以一次跳一个,也可以一次跳两个,有两种跳法: f(2) = 2n = 3时,我们从上往下...
2019-06-24 21:52:54
206
原创 剑指offer -Fabonacci--斐波那契数列
Fabonacci–斐波那契数列从第三个数开始,每一位都是前两位的和。**递归:**用时1300+mspublic class Solution { public int Fibonacci(int n) { if(n == 0){ return 0; } else if(n==1){ r...
2019-06-13 10:58:40
95
原创 算法题目,leetcode,剑指offer
二分查找二分查找的过程就是不断的尝试,确定范围,再缩小范围,再尝试的过程。范围缩到最后,总会有两个数,如果我们要查找的数在这两个数之内,那么就被我们找到了,如果没有,说明不存在要找的数。再说旋转数组,旋转数组就是原来有序的数组,把前面一部分数据,接到了尾部,或者尾部的数据接到了前头,例如:array: [0,1,2,3,4,5,6,7,8,9] —> array: [4,5,6,7,...
2019-06-13 10:56:25
234
原创 LeetCode-- 最小栈
因为昨天刚学习了栈的实现,使用数组封装成栈,所以,直接想到的思路就是通过数组封装。代码虽然通过,但是用时400ms,很长。先贴下原始代码,后续再改动优化。class MinStack { /** initialize your data structure here. */ int size; int[] array; public MinStack(...
2019-06-12 14:25:19
118
原创 Java练手项目--小游戏:飞机大战
飞机大战一周前开始学习java基础,看了尚学堂高老师的视频,跟着做了一个飞机大战游戏的小项目,现在整理总结一下。问题分析模拟游戏,飞机可以由上下左右方向键控制,飞机被限制在window边界内,不能越过边界。炮弹碰到飞机,飞机死亡爆炸。飞机大战中所需要的对象有:背景,飞机,炮弹,和爆炸后的动作。背景、飞机、炮弹,都需要的属性有:图像,绘图坐标X,Y。飞机和炮弹需要运动速度,炮弹是单独绘制,...
2019-06-09 13:20:12
1259
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人