自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (5)
  • 收藏
  • 关注

原创 剑指编程(13)

一、 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。 例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3 那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1},

2017-10-22 18:17:35 284

原创 剑指编程(12)

一、 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。 注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; TreeLinkNode next = null

2017-10-21 18:19:17 272

原创 剑指编程(11)

一、 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。 也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。public class Solution { // Parameters: //

2017-10-20 20:01:33 281

原创 剑指编程(10)

一、 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)… 他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!! “红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…..LL不高兴了 他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,

2017-10-19 17:53:21 225

原创 剑指编程(9)

一、 一个整型数组里除了两个数字之外,其他的数字都出现了两次。 请写程序找出这两个只出现一次的数字。 num1,num2分别为长度为1的数组。传出参数 将num1[0],num2[0]设置为返回结果public class Solution { public void FindNumsAppearOnce(int [] array,int num1[] , int

2017-10-17 16:58:45 242

原创 剑指编程(8)

一、 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。 输入一个数组,求出这个数组中的逆序对的总数P。 并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围: 对于%50的数据,size<=10^4 对于%75的数据,si

2017-10-15 16:15:56 301

原创 剑指编程(7)

一、 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了: 在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。 但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢? 例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。你会不会被

2017-10-14 18:59:50 202

原创 剑指编程(6)

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

2017-10-13 18:59:48 185

原创 剑指编程(5)

一、 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。public class Solution { Stack<Integer> stk = new Stack<>(); public void push(int node) { stk.push(node); } public void pop() { s

2017-10-12 21:06:00 214

原创 剑指编程(4)

一、 输入一个链表,反转链表后,输出链表的所有元素。public class Solution { public ListNode ReverseList(ListNode head) { if(head == null) { return null; } ListNode pre = null;

2017-10-10 19:10:47 209

原创 剑指编程(3)

一、public class Solution { //如果末尾为1,则相与后刚好去掉了这个1 //如果末尾为0,减1后将最后一位1变成0,刚好也去掉了这个1 public int NumberOf1(int n) { int res = 0; while(n != 0) { res++; n

2017-10-09 18:51:28 246

原创 剑指编程(2)

一、 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。public class Solution { //最简单的思路就是找到

2017-09-29 18:15:42 209

原创 剑指编程(1)

一、 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。public class Solution { //有序数组,可以用二分法 public boolean Find(int target, int [][] array) { for

2017-09-28 18:43:40 204

原创 2017网易8个编程题

一、 小易准备去魔法王国采购魔法神器,购买魔法神器需要使用魔法币 但是小易现在一枚魔法币都没有,但是小易有两台魔法机器可以通过投入x(x可以为0)个魔法币产生更多的魔法币。 魔法机器1:如果投入x个魔法币,魔法机器会将其变为2x+1个魔法币 魔法机器2:如果投入x个魔法币,魔法机器会将其变为2x+2个魔法币 小易采购魔法神器总共需要n个魔法币,所以小易只能通过两台魔法机

2017-09-27 18:48:54 817

原创 左右括号全排列

public class 左右括号全排列 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n = sc.nextInt();//括号数 sc.close(); StringBuffer sb = new Strin

2017-09-25 20:59:16 836

原创 解密

> 输入描述: 每组数据输入只有一行,是一个由不同的大写字母组成的字符串, 已知字符串的长度在1到9之间,我们假设对于大写字母有’A’ < ‘B’ < … < ‘Y’ < ‘Z’。 输出描述: 输出这个字符串的所有排列方式,每行一个排列,要求字母序比较小的排列在前面。 输入例子: WHL 输出例子: HLW HWL LHW LWH WHL WLHpublic class

2017-09-24 18:12:26 437

原创 魔法权值

给出 n 个字符串,全部任意组合在一起可以生产n!个字符串,长度为n个字符串的长度和 一个字符串的权值等于把这个字符串循环左移 i次后得到的字符串仍和原字符串全等的数量,i的取值为[1,字符串长度]。 求这些字符串最后生成的 n! 个字符串中权值为 K 的有多少个。 注:定义把一个串循环左移 1 次等价于把这个串的第一个字符移动到最后一个字符的后面。 输入描述: 第

2017-09-23 17:37:53 452

原创 出栈全排列

package 全排列; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner; import java.util.Stack;/* 给定一个正整数N代表火车数量,0

2017-09-21 20:02:57 1333

原创 大数加减

在计算机中,由于处理器位宽限制,只能处理有限精度的十进制整数加减法,比如在32位宽处理器计算机中, 参与运算的操作数和结果必须在-231~231-1之间。如果需要进行更大范围的十进制整数加法,需要使用特殊 的方式实现,比如使用字符串保存操作数和结果,采取逐位运算的方式。如下: 9876543210 + 1234567890 = ? 让字符串 num1=”9876543210”,字符串 num

2017-09-16 21:36:14 269

原创 华为笔试题(9)

一、 完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。 它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。 例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。 给定函数count(int n),用于计算n以内(含n)完全数的个数。计算范围, 0 < n <= 5

2017-09-14 19:01:51 461

原创 华为笔试题(8)

一、 1、对输入的字符串进行加解密,并输出。 2、加密方法为: 当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a; 当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0; 其他字符不做变化。 3、解密方法为加密的逆过程 输入描述: 输入说明 输入一串要加密的密码 输入一串

2017-09-11 18:53:38 493

原创 华为笔试题(7)

一、 编写一个程序,将输入字符串中的字符按如下规则排序。 规则 1 :英文字母从 A 到 Z 排列,不区分大小写。 如,输入: Type 输出: epTy 规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。 如,输入: BabA 输出: aABb 规则 3 :非英文字母的其它字符保持原来的位置。 如,输

2017-09-09 20:09:50 378

原创 华为笔试题(6)

一、 开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。 从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。 输入: 合法坐标为A(或者D或者W或者S) + 数字(两位以内) 坐标之间以;分隔。 非法坐标点需要进行丢弃。如AA10; A1A; %; YAD; 等。 下面是一个

2017-09-08 15:34:46 419

原创 华为笔试题(5)

一、 验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。 例如: 1^3=1 2^3=3+5 3^3=7+9+11 4^3=13+15+17+19 输入描述: 输入一个int整数 输出描述: 输出分解后的string 示例1 输入 6 输出 31+33+35+37+39+41pub

2017-09-06 19:15:17 506

原创 华为笔试题(4)

一、 计算n x m的棋盘格子(n为横向的格子数,m为竖向的格子数) 沿着各自边缘线从左上角走到右下角,总共有多少种走法, 要求不能走回头路,即:只能往右和往下走,不能往左和往上走。 输入描述: 输入两个正整数 输出描述: 返回结果 示例1 输入 2 2 输出 6public class Main{ public st

2017-09-05 18:24:26 449

原创 华为笔试题(3)

一、 输入描述: 输入候选人的人数,第二行输入候选人的名字,第三行输入投票人的人数,第四行输入投票。 输出描述: 每行输出候选人的名字和得票数量。 输入 4 A B C D 8 A B C D E F G H 输出 A : 1 B : 1 C : 1 D : 1 Invalid : 4public class

2017-09-04 19:46:47 1024

原创 华为笔试题(2)

一、 Redraiment是走梅花桩的高手。Redraiment总是起点不限,从前到后,往高的桩子走,但走的步数最多。 你能替Redraiment研究他最多走的步数吗? 输入描述: 输入多行,先输入数组的个数,再输入相应个数的整数 输出描述: 输出结果 样例输入 6 2 5 1 5 4 5 样例输出 3 提示 Examp

2017-09-03 18:56:05 432

原创 华为笔试题(1)

一、 正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。 输入描述: 输入两个正整数A和B。 输出描述: 输出A和B的最小公倍数。 示例1 输入 5 7 输出 35public class Main{ public static void main(String[] ar

2017-09-02 18:49:37 427

原创 蘑菇阵---动态规划

一片长有蘑菇的由n*m个方格组成的草地 A在(1,1),B在(n,m)。A想要拜访B,所以每次她只会走(i,j+1)或(i+1,j)这样的路线, 在草地上有k个蘑菇种在格子里(多个蘑菇可能在同一方格), 问:A如果每一步随机选择的话(若她在边界上,则只有一种选择),那么她不碰到蘑菇走到B的家的概率是多少? 输入描述: 第一行N,M,K(1 ≤ N,M ≤ 20, k ≤

2017-09-01 19:02:25 314

原创 跳石板---动态规划

小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3……. 这条石板路要根据特殊的规则才能前进: 对于小易当前所在的编号为K的 石板, 小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。 易当前处在编号为N的石板,他想跳到编号恰好为M的石板去, 小易想知道最少需要跳跃几次可以到达。 例如: N =

2017-09-01 18:40:54 374

原创 字符混编---动态规划

A、B和C是字符串。如果C由A、B组成,且A、B相对顺序在C中不变,那么称C是A和B的混编。 给定A、B、C三个字符串。请返回一个bool值,代表C是否是A和B的混编。 保证三个串的长度均小于等于100。 测试样例: ABC 12C A12BCC 返回:truepublic class Main { public static void main(

2017-09-01 18:18:59 294

原创 最小编辑代价---动态规划

对于两个字符串A和B,我们需要进行插入、删除和修改操作将A串变为B串, 定义c0,c1,c2分别为三种操作的代价 给定三种操作代价,字符串A和B,求出将A串变为B串所需要的最少代价。 保证两串长度均小于等于300,且三种代价值均小于等于100。 测试样例: 5 3 100 abc adc 返回:8public class Main { pub

2017-09-01 17:59:51 321

原创 最长连续公共子序列---动态规划

对于两个字符串,请设计一个高效算法,求他们的最长公共子序列的长度, 不要求字符连续 给定字符串A和B,请返回最长公共子序列的长度。保证两串长度均小于等于300。 测试样例: 1A2C3D4B56 B1D23CA45B6A 返回:6public class 最长公共子序列 { public static void main(String[] args) {

2017-09-01 17:54:52 1229

原创 最长不连续上升序列----动态规划

返回数字序列的最长上升子序列的长度,数字不要求连续 给定一个整数n和长度为n的数组,请返回最长上升子序列的长度。 测试样例: 7 2 1 4 3 1 5 6 返回:4public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System

2017-09-01 17:48:41 494

原创 今天吃点好的---背包

已知本厂有n个食堂,第i(i属于[1,n])个食堂有m[i]种食物, 每种食物有一个价钱c,享受度v,度度熊希望去一个食堂就餐, 花费[bot,top]范围内的钱数(也可以拍桌子走人,哪里都不吃了), 选择若干种食物,使得自己所能获得的享受度最大。(同种食物最多选一份) 现在告诉你所有食堂食物的信息,希望你进行选择搭配,使得度度熊可以得到最大的享受度,并输出这个享受度的值。

2017-08-31 20:58:39 307

原创 最大不可组成和---背包

给定一个全是正数的数组arr,定义一下arr的最小不可组成和的概念: 1,arr的所有非空子集中,把每个子集内的所有元素加起来会出现很多的值,其中最小的记为min,最大的记为max; 2,在区间[min,max]上,如果有一些正数不可以被arr某一个子集相加得到,那么这些正数中最小的那个,就是arr的最小不可组成和; 3,在区间[min,max]上,如果所有的数都可以被arr的某一

2017-08-31 20:32:24 271

原创 双核处理---背包问题

一种双核CPU的两个核能够同时的处理任务,现在有n个已知数据量的任务需要交给CPU处理, 假设已知CPU的每个核1秒可以处理1kb,每个核同时只能处理一项任务。 n个任务可以按照任意顺序放入CPU进行处理, 现在需要设计一个方案让CPU处理完这批任务所需的时间最少,求这个最小的时间。 输入描述: 输入包括两行: 第一行为整数n(1 ≤ n ≤ 50) 第二

2017-08-31 20:20:07 664

原创 换零钱---背包

有一个数组changes,changes中所有的值都为正数且不重复。 每个值代表一种面值的货币,每种面值的货币可以使用任意张, 对于一个给定值x,请设计一个高效算法,计算组成这个值的方案数。 给定一个int数组changes,代表所以零钱,同时给定它的大小n, 另外给定一个正整数x,请返回组成x的方案数,保证n小于等于100且x小于等于10000。 测试样例: 4

2017-08-31 20:09:03 227

原创 造新世界---背包

众所周知计算机代码底层计算都是0和1的计算, 牛牛知道这点之后就想使用0和1创造一个新世界! 牛牛现在手里有n个0和m个1,给出牛牛可以创造的x种物品, 每种物品都由一个01串表示。 牛牛想知道当前手中的0和1可以最多创造出多少种物品。 输入描述: 输入数据包括x+1行: 第一行包括三个整数x(2 ≤ x ≤ 20),n(0 ≤ n ≤ 500),m(0

2017-08-31 19:55:47 266

原创 搬砖---动态规划

小易有n块砖块,每一块砖块有一个高度。 小易希望利用这些砖块堆砌两座相同高度的塔。 为了让问题简单,砖块堆砌就是简单的高度相加, 某一块砖只能使用在一座塔中一次。 小易现在让能够堆砌出来的两座塔的高度尽量高,小易能否完成呢。 输入描述: 输入包括两行: 第一行为整数n(1 ≤ n ≤ 50),即一共有n块砖块 第二行为n个整数,表示每一块砖块的高度h

2017-08-30 20:55:04 472

newabctest知识学习.zip

newabctest知识学习.zip

2021-06-30

知识学习端午版本哈哈.zip

知识学习端午版本

2021-06-14

java开发面试指导md

java开发面试指导md

2021-05-28

redis学习资料.md

redis学习资料.md

2021-05-27

SQLyog注册表

11.2.4.0版本 直接运行即可

2017-07-26

空空如也

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

TA关注的人

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