自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 合并两个链表

输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。public class Solution { public ListNode Merge(ListNode list1,ListNode list2) { ListNode root=null,tempBigger,nodeNow=null; while(list1!=null && list2!=null){ if(l

2021-01-23 15:17:38 274

原创 找二叉树的中序后继

设计一个算法,找出二叉搜索树中指定节点的“下一个”节点(也即中序后继)。如果指定节点没有对应的“下一个”节点,则返回null。方法一:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class

2020-11-01 11:59:39 1687

原创 给定两个用链表表示的整数,每个节点包含一个数位。

给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { .

2020-10-31 10:42:24 2568

原创 找二叉树中和为某一值的路径

输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。这题磨耗了很多时间,首先要理解题目意思,题目指从根节点到叶子节点路径的和为某一个目标值,所以路径中的最后一个节点一定是叶子节点。所以只要遍历所有到叶子节点的路径,再看路径的节点和是否为目标值即可解答该题。解答一:/** * Definition for a binary tree node. * public class TreeNode { *

2020-10-28 23:02:12 722

原创 vue-数组-对象-坑

对于Vue,稍不留意就会入大坑,例如:一、由于JavaScript的限制,Vue不能检测以下数组的变动:1当你利用索引直接设置一个数组项时,例如:vm.items[indexOfItem]=newValue2当你修改数组的长度时,例如:vm.items.length=newLength为了解决第一类问题,以下两种方式都可以实现和vm.items[indexOfI...

2019-06-10 19:28:12 1320

原创 js中如何使用post来向后台获取文件流进行文件下载

因为业务需求,需要把数据以文件的格式传输给用户,但是因为前端使用vue的环境,使用ajax的方式提交请求并没有获得自己想要的效果,因为文件下载的功能后端返回的是文件流,ajax的请求方式并提供好的方式接收数据流,查询了很多资料,也没有一个比较完整的方案,最终使用以下的请求方式模拟了ajax中的post请求,并实现了文件下载的功能,相关的前端代码如下:downloadFile()...

2019-05-28 18:44:25 11210

原创 redis实战 --- (2)大数据的写入

(一)问题描述:拥有接近亿级的数据需要写入,如何能较快速把数据写入redis,成为比较棘手的问题?方案(1):一条一条的写方案(2):使用pipeline方案(3):使用管道pipe           cat data.txt | redis-cli --pipe 三种方法的速度是(1)>(2)>(3),方法(1)之所以耗时很大原因是因为命令是同步的,读写的...

2018-11-14 20:30:03 1317

原创 Redis实战问题 - (1)redis查询拉挂程序

问题描述:由于生产环境无法直接操作redis服务器终端,无法实时的查询redis中的数据,和操作redis数据库,为了更加方便的实现sredis数据库的操作我们做了一个查询界面,界面提供redis常用命令的调用,测试环境一切正常,上了生成实际使用中遇到了we问题总结如下: (1)查询直接拉挂程序,或者查询的时间以分钟为单位原因:生产上的数据量都是百万级别以上,比测试环境的数据多非常多,...

2018-08-14 22:48:30 294

原创 JS访问动态变化的对象

今天在写前端的时候,遇见一个问题,就是js对象中包含一些动态生成的对象,到了前端无法使用正常访问对象的方法,因为不知道其具体的引用,特别是当这些引用还是写变量的时候,虽有了这篇文章,访问JS中的动态变量的方法

2017-12-06 23:17:09 581

原创 Maven中使用mysql数据库

Maven中连接mysql数据库

2017-02-21 18:49:27 5030

原创 递归与非递归的算法效率

背景:题目描述操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \

2016-07-19 11:07:00 2565

原创 认老乡-编程题有感

题目描述大学的同学来自全国各地,对于远离家乡步入陌生大学校园的大一新生来说,碰到老乡是多么激动的一件事,于是大家都热衷于问身边的同学是否与自己同乡,来自新疆的小赛尤其热衷。但是大家都不告诉小赛他们来自哪里,只是说与谁同乡,从所给的信息中,你能告诉小赛有多少人确定是她的同乡吗?输入每个测试实例首先包括2个整数,N(1 在接下来的M行里,每行

2016-07-18 12:47:13 1958

原创 狂战士VS驱逐者

上个月参加了乐视的笔试,在程序题的时候出现了一个问题,是连题目什么意思我都不懂,看了好久还是不懂事什么意思,索性就不做了,这几天舍友在练习,重新看了下题目,顿时恍然大悟,发现为什么之前自己怎么看怎么看就是不懂,这次却把它做出来了。问题描述如下:卢卡斯的驱逐者大军已经来到了赫柏的卡诺萨城,赫柏终于下定决心,集结了大军,与驱逐者全面开战。卢卡斯的手下有6名天之驱逐者,这6名天之驱逐者各赋异

2016-07-17 17:23:37 555

原创 写代码时候关于数据结构的考虑与算法效率的问题

使用的方法不同,算法效率会有非常的不同,在写程序的时候第一步可能是实现,第二步我们应该考虑重构代码,增加算法的执行效率。关于这到题目,看了下,因为第一种方法是每次像ArrayList的头部插入元素,这样每次插入都要移动元素,也会在一定程度上影响算法的效率,看其他人在这个问题上使用栈先存储,后面进行出栈的操作,这样做的好处就是很好的避免了每次插入都要进行元素右移的操作。

2016-07-16 09:23:19 491

原创 抽象与封装

看百度百科上抽象类的定义:使用了关键词abstract声明的类叫作“抽象类”。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。“抽象方法”,属于一种不完整的方法,只含有一个声明,没有方法主体。抽象类中可以没有抽象的方法,但是包含抽象方法的类一定是抽象类,抽象类和普通类其实没有多大区别,除了抽象类不能被实例化外,但是抽象类与接口又有些区别,不仅仅在于一个是类,一个是

2016-07-04 21:26:35 841

原创 关于java比较器

最近由于需要用到集合去给集合中的元素排序,需要用到比较器,所以对比较器做下小的总结。问题的产生很简单,就是需要根据一个高维的变量对数据进行排序,例如:图片中的数据是一个有六个维度的数据集,需要根据从第一维开始到第六维有序排序,自让而然需要使用到比较器,首先看类的定义:其实类中就包含一个变量int[]length=newint[6];这里是六维,所以在比较器中

2016-07-03 10:04:27 323

原创 数字在排序数组中出现的次数

统计一个数字在排序数组中出现的次数。

2016-04-06 21:25:12 266

原创 输入两个链表,找出它们的第一个公共结点

输入两个链表,找出它们的第一个公共结点。

2016-04-06 21:21:45 354

原创 java 中的观察者模式

观察者模式

2016-04-05 16:02:33 225

转载 synchronized关键字详解

推荐一篇博文关于synchronized关键字的,写的非常的好,建议看下http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html

2016-03-26 09:47:03 200

原创 java中最小生成树的实现

最小生成树的实现

2016-03-25 12:43:21 1278 2

原创 Callable接口和Runnable接口

Runnable是执行工作的独立任务,不具有返回值。在Java SE5中引入的Callable是一种具有;类型参数的泛型,参数类型为从方法call()中返回的值,并且必须使用ExecutorService.submit()调用它。

2016-03-25 12:33:57 279

原创 java.util.NoSuchElementException

java.util.NoSuchElementException

2016-03-23 22:35:06 1915

原创 Dijkstra求最短路径

使用java,根据Dijkstra求最短路径

2016-03-23 21:53:00 333

原创 java使用两个栈模拟队列的实现

1.使用栈模拟队列public class StackToQueue { LinkStack s1 = new LinkStack(); LinkStack s2 = new LinkStack(); /*这里使用两个栈来模拟队列,s1主要负责入栈,s1栈顶存储的都是最近存储的元素,s2栈顶存储的是s1的栈低元素 * 所以每次入栈的时候要判断s1是否为空,如果s1不

2016-03-21 13:40:01 428

原创 java队列的链表实现

java的队列实现public class LinkQueue { Node head = null; Node tail = null; boolean isEmpty(){ if(head==null) return true; else return false; } void put(T data){ Node ne

2016-03-21 13:13:36 265

原创 栈在java中的实现

1栈的数组实现public class ArrayStack { Object[] stack = null; private int size; void initStack(){ if(stack==null){ stack = new Object[10]; size = 0; } } //判断栈是否为空,栈的起始位置为1

2016-03-21 12:14:58 194

原创 Java :Arrays 的copyOf()

先看定义其中看这样一个具体的描述片段从定义中看以看出,Arrays中的copyOf具有扩充数组的功能,其中original为待扩充的原始数组,newLength为需要扩充的容量的大小,方法不会直接在原数组中直接修改,而是返回新的一个数组,所以copyOf具有返回值。具体的实现过程如下:

2016-03-21 10:09:28 2438

转载 JAVA中类的加载过程

java中类的加载过程

2016-03-20 21:56:51 8473

原创 java数据结构排序之堆排序算法实现

堆排序的数组实现,由于数组的下标可能从1开始,也可能从0开始,所以要注意,以下代码分两种情况考虑    1.当数组下标从0开始的时候 public class HeapSort { static void adjustHeap1(int[] dataList ,int key, int n){//假设数组下标从0开始的情况建堆 int keyWord = dataList[key

2016-03-20 10:04:11 430

原创 java数据结构排序之冒泡实现

冒泡排序的java实现

2016-03-19 15:41:59 284

原创 java数据结构排序之归并排序实现

static void mergeSort(int[] dataList,int l,int mid,int r){ int[] temp = new int[r-l+1]; int i=l,j=mid+1,k; //使用temp来暂存有序的元素 for (k=0; i<=mid && j<=r; k++) { if(dataList[i]<=dataList[j]){

2016-03-19 11:28:35 395

原创 java数据结构排序之希尔排序实现

早上鲜血来潮想写个希尔排序算法,发现发生了错误,一直不解,最初写的代码如下所示: static void shellSort(int[] dataList,int dk){ System.out.println("dk="+dk); for (int i = dk; i < dataList.length; i++) { int flag=i,temp=dataList[

2016-03-19 11:16:55 482

原创 java数据结构排序之插入排序实现

public class InsertSort {public class InsertSort { static void print(int[] dataList){ for (int j = 0; j < dataList.length; j++) { System.out.print(dataList[j]+" "); } System.out.println();

2016-03-18 16:52:34 393

原创 java数据结构排序之选择排序实现

public class SelectSort { static void selectSort(int[] dataList){ int flag,temp; System.out.println("数组的长度为 "+dataList.length); for (int i = 0; i < dataList.length-1; i++) { flag = i; f

2016-03-18 15:53:42 327

原创 关乎java中类的初始化问题1

程序1class SupClass{ static{ System.out.println("in superClass"); } public static int value = 3;}class SubClass extends SupClass{ static{ System.out.println("in subClass"); } publ

2016-03-16 16:51:38 272

转载 java对象的创建过程

对象的创建开始:虚拟机遇到new 关键字的时候,首先去常量池中寻找有没有这个类的符号引用,并且检查该引用的类是否已经被加载,解析,和初始化过,如果没有则会先执行该类的加载过程, 在通过检查后,虚拟机为该新生对象分配内存。分配内存:为对象分配内存有俩种方式: 一种分配方式是“指针碰撞",在内存规整的时候,已使用的内存在一侧,未使用的内存在一侧时,中间为指示器指针,

2016-03-08 14:21:06 371

原创 浅析HashMap源码

HashMap 中 put 操作,添加元素的源码如下:/** * Associates the specified value with the specified key in this map. * If the map previously contained a mapping for the key, the old * value is replace

2016-03-04 20:52:18 281

转载 关于Tomcat单独运行和在eclipse下运行时路径的问题

原文地址《http://www.blogjava.net/javagrass/archive/2011/05/04/349467.html》 我们平时写路径的时候基本是都是用相对路径。这样不会因为在不同环境下目录的差异影响我们的项目,        昨天在做项目的时候遇到一个问题,就是把一个图片传到后台以后立即要对图片进行加上水印并且将图片的大小处理成符合的大小,但是在Eclips

2016-03-04 16:36:00 1481

原创 关于C语言字符串处理之可变字符串

今天看到一个帖子,帖子内容大概就是用C语言实现把字符串中的小写字符修改成大写的字符,看到了感觉这还不简单,但是一直出现关于内存的问题。void change(char *str){ char *p = str; while(*p!='\0'){ if(*p>='a' && *p<='z'){ printf("%c\n",*p);

2016-01-25 12:39:36 3523

空空如也

空空如也

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

TA关注的人

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