- 博客(84)
- 收藏
- 关注
原创 2018春招总结(Java后端),干货满满
春招基本结束,投的都是后台开发岗,总共收到了6家offer(链家、顺丰、去哪儿、华为,依图,微众银行),最后选择了微众银行。从2月底开始,两个月每天看面经,看资料,然后每天做笔试题,真的身心俱疲,仅以此贴来记录自己的面试经验,不喜勿喷。1.简历筛选挂:畅游,唯品会,招商银行信用卡,拼多多,搜狗,虎牙2.笔试挂:网易游戏,网易,京东,360,腾讯,百度,头条 3.觉得笔试做得不错但没消息的:美图,巨...
2018-06-11 11:49:34 5158 5
原创 Java实现二叉树的各种操作
package com.special;import java.util.ArrayList;import java.util.LinkedList;import java.util.List;import java.util.Queue;import java.util.Stack;public class BinaryTree { //前序遍历:递归法 static A...
2017-12-26 21:48:05 531
原创 spark rdd互转
package com.scala.test;import org.apache.log4j.Level;import org.apache.log4j.Logger;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.java.JavaSparkContext;import org.apache.spark.api.java.function.Function;import org.apache.spar.
2020-05-13 23:51:23 259
原创 edas上传文件fonts没有嵌入问题
1. adobe pdf printer版本6的可以用,版本8,9的不能打印(IEEE joboptions, 打印的是图片)2. cute pdf 可以打印,但是是图片3. adobe pdf安装joboptions, 将joboptions拖到acrobat distiller ...
2019-01-14 12:30:42 542 1
原创 npm总结
1.sublime_text3 pageControl报错Package Control.sublime-settings]修改方法:Preferences > Package Settings > Package Control > Settings - User添加"channels": [ "http://cst.stu.126.net/u...
2019-01-11 14:22:55 237
原创 安装webpack
安装注意:跟着视频走的,全局webpack和本地webpack一定都要设成1.15.01.安装nodeJS, 通过node -v查看版本2.安装全局webpack:npm install webpack -g指定版本:npm install webpack@1.15.0 -g3.进入到项目文件夹,创建package.json文件:npm init -y4.安装本地webpa...
2019-01-11 10:35:04 523
原创 zookeeper与kafka 测试
1.zookeeper安装包下载:http://zookeeper.apache.org/releases.html#download2.kafka安装包下载:http://kafka.apache.org/downloads.html 具体安装细节见https://blog.csdn.net/evankaka/article/details/52421314zookeeper测试:...
2018-12-24 16:48:42 615
原创 利用快排寻找数组中第k个最大元素
/* * 利用快排寻找数组中第k个最大元素 */public class FindFirstKElement { //快排 public static int getBaseIndex(int[] arr, int start, int end) { int base = arr[start]; while(start < end) { while(arr[end]...
2018-09-08 09:27:07 1067
原创 Leetcode:给定一个数组,从其中选取三个数,要求三个数的和必须是0,求出所有这样的组合
package com.Test;import java.util.ArrayList;import java.util.Arrays;/*给定一个数组,从其中选取三个数,要求三个数的和必须是0,求出所有这样的组合 * dfs超时,但是方法扩展性强,可扩展到四个数、五个数的和是0; * 先固定一个,再利用双指针求解的方法不会超时 */public class ThreeSum ...
2018-08-15 17:59:06 5248
原创 三种方法寻找数组前K个最大的数
package com.Test;import java.util.ArrayList;import java.util.Arrays;import java.util.List;//给定一个长度为n的数组,寻找其中最大的k个数public class FindKthElements { //算法一:排序,时间复杂度O(nlogn),空间复杂度O(1) public Arr...
2018-07-31 18:10:01 18111 2
原创 三种方法求解两个数组的交集
package com.Test;import java.util.ArrayList;import java.util.Arrays;import java.util.HashMap;import java.util.List;import java.util.Map;//求两个数组的交集public class FindIntersectionBetweenTwoArray...
2018-07-31 17:39:20 11621 2
原创 2018微众银行春招后端开发实习题解
第一题:/*有限域问题: *在n的范围内,某一个数是素数或者是素数的k次方(素数的k次方不一定还是素数), *则认为满足要求,求满足这样的数的个数。例如当n=37时,满足要求的数共19个: *2,3,4,5,7,8,9,11,13,16,17,19,23,25,27,29,31,32,37。*/import java.util.Scanner;public class FiniteF...
2018-06-11 18:06:10 1353
原创 2018携程春招后端开发实习题解
第一题:/*将数组中的数全部移动到末尾 *比如[0,1,0,3,12]移动后的期望数组为[1,3,12,0,0] */public class MoveZeros { public static void moveZeros(int[] nums) { //找到第一个0开始的位置 int start = -1; for(int i = 0;i < nums.length...
2018-06-11 17:07:35 365
原创 2018 51信用卡春招后端开发实习题解
第一题:/* *输入一串字符,判断第二个字符串的字符是否都存在于第一个字符串,返回true,否则false,两个串中间有;号连接 如输入: ABCNB51;51NB 输出:true */import java.util.*;public class StringJudge { public static void main(String[] ar...
2018-06-11 12:26:55 250
原创 2018搜狐春招后端开发实习题解
第一题:import java.util.*;/*搜狐已经累计拥有千万级别会员用户,会员成长值公式为:会员成长值=每天成长值+任务成长值。 *输入一组数组,第一行是n,表示接下来有n行数据输入, *从第二行开始,如果第一个是1,则该行有4个数据, *第一个1表示每日成长规则,第二个数字表示开始时间,第三个数字表示截止时间,第四个数字表示每日成长值。 *如果第一个数字是2,则该行总共有3...
2018-06-11 11:27:20 258
原创 2018华为春招IT应用软件开发实习题解
第一题:import java.util.*;/* 给你一个原始字符串,根据该字符串内每个字符出现的次数,按照ASCII码递增顺序重新调整输出。 举例!假设原始字符串为: eeefgghhh 则每种字符出现的次数分别是: (1)eee 3次 (2)f 1次 (3)gg 2次 (4)hhh 3次 重排输...
2018-06-11 10:54:09 491
原创 2018链家春招后端开发实习题解
第一题:有n个开关,每个开关可控制若干个灯泡,请问最多可控制多少个灯泡思路:将所有的灯泡编号放到set里面去重即可import java.util.*;public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); int n = s.nextInt(
2018-04-08 21:32:49 493
原创 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case
/* * 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case * 等关键字及条件判断语句(A?B:C)。 * 思路:等差数列求和公式:n*(n+1)/2=(n^2+n)/2,由于不能用除法,因此可以右移一位表示除以2 */public class Sum_Solution { public int sum_Solution(int
2018-02-23 15:07:58 1511 1
原创 《剑指offer》-将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数
/* * 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 * 数值为0或者字符串不是一个合法的数值则返回0获得123的方法:首先1*10+2=12,12*10+3=123备注:字符'0'对应的ASCII码值是48(转化为int类型),而字符'9'对应的ASCII码值是57输入负的数据会有符号位,输入正的数据可能有符号位 */public class StrToI
2018-02-23 15:03:01 2216 2
原创 《剑指offer》-求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号
/* * 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 * 思路:不能使用四则运算,就只剩下位运算了。例如17+5 * 17转化成二进制10001,5转化成二进制0101。 * 首先不考虑进位,则1+1=0,1+0=1,0+1=1,0+0=0 * 可以看出这是位^运算(异或),这一步的结果是10100. * * 接下来考虑是否产生进位,则1+1=1
2018-02-23 13:12:27 354
原创 《剑指offer》-将一个字符串中的空格替换成“%20”
/* * 请实现一个函数,将一个字符串中的空格替换成“%20”。 * 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 */public class ReplaceSpace { public String replaceSpace(StringBuffer str) { if(str == null) return new
2018-02-23 12:09:58 213
原创 《剑指offer》-把字符串序列循环左移K位后的序列输出
/* * 对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。 * 例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果, * 即“XYZdefabc”。是不是很简单?OK,搞定它! * * 考察字符串截取,注意字符串为空的情况 */public class LeftRotateString { public String leftRotateStrin...
2018-02-23 11:55:03 598
原创 《剑指offer》-找出字符流中第一个只出现一次的字符
/* * 请实现一个函数用来找出字符流中第一个只出现一次的字符。 * 例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。 * 当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 * 如果当前字符流没有存在出现一次的字符,返回#字符。 */import java.util.*;public class FirstAppearin
2018-02-23 11:48:45 252
原创 《剑指offer》-实现一个函数用来判断字符串是否表示数值(包括整数和小数)
/* * 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。 * 例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 * 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 */public class IsNumeric { public boolean isNumeric(char[]
2018-02-23 11:30:22 1104
原创 《剑指offer》-翻转单词顺序列
/* * 翻转单词顺序列 * 例如,“student. a am I” * 正确的句子应该是“I am a student.” * 注意辨别空串和空格串! */public class ReverseSentence { public String reverseSentence(String str) { if(str == null) return null; //判断s
2018-02-23 10:18:55 164
原创 《剑指offer》-按字典序列打印出字符串中字符的所有排列
/* * 输入一个字符串,按字典序打印出该字符串中字符的所有排列。 * 例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 * 思路: * 分治法:将第一个位置的元素与其他所有位置进行交换, * 之后针对得到的每一个字符串,将第二个位置的元素与其他所有位置进行交换 * .... */import java.util...
2018-02-08 10:04:48 611
原创 《剑指offer》-判断序列是否为栈的弹出顺序
import java.util.Stack;/* * 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。 * 假设压入栈的所有数字均不相等。 * 例如:序列1,2,3,4,5是某栈的压入顺序, * 序列4,5,3,2,1是该压栈序列对应的一个弹出序列, * 但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的) *
2018-02-06 10:36:58 205
原创 《剑指offer》-实现一个能够得到栈最小元素的min函数
/* * 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。 * 思路:构造一个辅助栈,保证每一次辅助栈压入的都是当前栈的最小元素 */import java.util.Stack;public class FindMinValueOfStack { Stack dataStack = new Stack(); Stack coopStack = new Stac
2018-02-06 10:32:10 221
原创 《剑指offer》-用两个栈来实现一个队列
import java.util.Stack;/* *用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 *思路:两次先进后出变成先进先出(画图) */public class UseStackImplementQueue { Stack stack1 = new Stack(); Stack stack2 = new Stack();
2018-02-06 10:25:41 141
原创 删除单链表中重复的结点
/* * 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 * 例如,链表1->2->3->3-4->4->5 处理后为 1->2->5 * 递归思想 */class ListNode { int val; ListNode next = null; ListNode(int val){ this.val = val;
2018-02-06 10:12:15 434 1
原创 寻找两个单链表第一个公共的节点
import java.util.Stack;/* * 找到两个链表第一个公共的节点 */class ListNode { int val; ListNode next = null; ListNode(int val){ this.val = val; }}public class FindFirstCommonNode { public ListNode
2018-02-06 09:58:02 191 1
原创 《剑指offer》-将二叉搜索树转化为双向链表
/* * 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。 * 要求不能创建任何新的结点,只能调整树中结点指针的指向。 */public class ConvertBinaryTreeToDoublyLinkedList { public TreeNode Convert(TreeNode pRootOfTree) { if(pRootOfTree == nu
2018-02-02 20:03:15 351
原创 《剑指offer》-从尾到头打印单链表
import java.util.ArrayList;import java.util.Stack;/* * 输入一个链表,从尾到头打印链表每个节点的值。 */class ListNode { int val; ListNode next = null; ListNode(int val){ this.val = val; }}public class Pr
2018-02-02 19:57:26 209
原创 《剑指offer》-反转单链表
/* *输入一个链表,反转链表后,输出链表的所有元素。 */public class ReverseList { public ListNode reverseList(ListNode head) { if(head == null) return head; ListNode pre = head; ListNode cur = head.next; ListN
2018-02-02 19:50:18 190
原创 《剑指offer》-合成两个单链表
/* * 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 * 思路: * 鲁棒性:如果list为空,返回list2;如果list2为空,返回list1;如果两者都为空,返回空 * 比较list1.val和list2.val的头节点,假设头节点是list1 * 比较list1.next.val和list2.val的值,较小的那个值作为list1
2018-02-01 16:23:14 172
原创 《剑指offer》-输出链表中倒数第k个结点
/* * 输入一个链表,输出该链表中倒数第k个结点。 */ class ListNode { int val; ListNode next = null; ListNode(int val){ this.val = val; }}public class FindKthToTail { //思路一:先统计长度为N,倒数第k个结点即正数第N-k个节点,需要遍历两次
2018-02-01 15:58:20 137
原创 《剑指offer》-复杂链表的复制
/* * 输入一个复杂链表(每个节点中有节点值,以及两个指针, * 一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。 *(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) * 注:本题分三步走:第一步先复制链表;第二部根据复制链表的特点,对新链表关联上随机节点;第三步拆分链表 */class RandomListNode
2018-02-01 15:36:41 196
原创 《剑指offer》-判断某整数数组是不是某二叉搜索树后序遍历的结果
/* * 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。 * 如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 * 思路:二叉排序树:左子树比根节点小,右子树比根节点大。 * 从后序遍历的结果来看,可以划分成前面一段(左子树)和中间一段(右子树) * 确定左子树、右子树的起点和终点,分别对他们递归。 * 递归的终止条件是:起点、终点重合(到叶
2018-02-01 15:26:09 858 1
原创 《剑指offer》-序列化和反序列化二叉树
/* *请实现两个函数,分别用来序列化和反序列化二叉树 *注:这里采用的是前序遍历的方式 */public class SerializeBinaryTree { String Serialize(TreeNode root) { if(root == null) return ""; StringBuilder sb =
2018-02-01 15:20:28 222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人