自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Hash方法实现复杂链表的复制

题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)。/*public class RandomListNode { int label; RandomListNode next = null; Rand...

2018-04-04 11:08:02 579

原创 删除有序链表中重复的节点

题目:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5 处理后为 1->2->5。非递归实现:/* public class ListNode { int val; ListNode next = null; ListNode(...

2018-04-02 21:52:29 196

原创 输入一个链表,输出该链表中倒数第k个结点。

/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListNode FindKthToTail(ListNode head,int...

2018-04-02 21:49:12 503

原创 替换空格

题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。public class Solution { public String replaceSpace(StringBuffer str) { char[] chArr = str.toString().toCharArr...

2018-04-02 22:07:21 159

原创 从尾到头打印链表

题目描述输入一个链表,从尾到头打印链表每个节点的值。/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* this.val = val;* }* }**/import ja...

2018-04-02 21:57:42 166

原创 socket nio

1.  传统的I/O使用传统的I/O程序读取文件内容, 并写入到另一个文件(或Socket), 如下程序:File.read(fileDesc,buf, len);Socket.send(socket,buf, len);会有较大的性能开销。1) 先将文件内容从磁盘中拷贝到操作系统buffer2) 再从操作系统buffer拷贝到程序应用buffer3) 从程序buf

2018-01-10 14:51:33 244

原创 求阶乘以及求各项阶乘和问题

下午做了一道笔试题,试求各项阶乘和的问题,也就是求 : 1! + 2! + ... + n!。一开始没什么思路,那就想着暴力求。。。就是从1~n,求每一项的阶乘,再求和,效率肯定低,当时脑子浑噩,脑子里想着这样肯定是有重复相乘的,但就是没能想出优化的T_T好吧,那就先来暴力求解吧。关于求阶乘的,用了递归求解(关键当时递归还给漏了个n,还是渣啊),想到可能会数很大,就暂时用了long型/** *...

2017-09-11 17:13:35 1287

原创 求序列的最大子序列和的问题

给定任意序列: A_1,A_2,A_3,...,A_N...求解 : A_i...A_j的和的最大值(1 这里分为递归和非递归两种方法实现。其中非递归实现的方法更优(复杂度O(N) )。对于这个问题,一开始很容易想到用两个循环嵌套,逐一去遍历以序列每一个元素为起点的子序列的和,从而去求出最大子序列和的问题public int maxSubSum1(int[] arr) { in

2017-09-11 10:29:40 378

原创 求两个数的最大公因数

欧几里得算法。给定两个数m,n,假设: m > n.其实就是不断的用 m对n取模,然后让m值取n的值,而n的值变为(m%n)的余数,直到n=0为止,这时的m就是它们的最大公因数了。就比如:m = 15, n = 10;第一次: temp = m % n = 5;               m = n = 10;              n = temp = 5;第二次:

2017-09-11 10:10:59 979

原创 二分查找应用-旋转数组

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;/** * 给定一个旋转数组(即,原来有序的数组,把前面某一部分放到数组的末尾,形成两部分有序子数组) * 在数组中查找某一值n ,返回它的位置。不存在返回Null * @author YunXing * 旋转数组的特例

2017-09-09 16:04:09 310

原创 匹配括号--Java

利用自己编写的栈实现对输入字符串的括号进行匹配。"("和")", "["和"]", "{"和"}"成对出现是合法字符串。例如"[][]{}", "{[[([]([])()[])]]}"是合法的; "([(])", "[())"是不合法的.当然,还会有大小括号间嵌套的合法性约束,这里没有考虑,只是考虑了承兑出现的合法性。例:as[x{cvfd[fdg([]([fgv]v)v(g)[fgd]@#$

2017-08-17 17:36:17 256

原创 中缀表达式转后缀表达式--Java

利用自己用数组实现的ArrayStack(与常规的栈功能基本一致)实现将中缀表达式变成后缀表达式。这个题目应该都有见过,自己也是看了些资料,加上自己的理解实现的,这里记录一下,给自己以后看。如果觉得可以,也分享一下。例如:    a + b * c + ( d * e + f ) * g --> a b c * + d e * f + g * +;    a + b - a * ( (

2017-08-17 17:15:15 402

空空如也

空空如也

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

TA关注的人

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