自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sjzgmy1的博客

越努力越幸运

  • 博客(16)
  • 收藏
  • 关注

原创 数值的整数次方

问题描述:实现函数double power(double base,int exponent),求base的exponent次方。不能使用库函数,同时不需要考虑大数问题。1 package Problem11; 3 public class Power { 4 /* 5 * 问题描述: 实现函数double power(double base,int exponent),求...

2018-03-17 23:33:33 146

原创 打印1到最大的n位数

题目描述:输入数字n,按顺序打印出从1到最大的n位十进制数。比如,输入3,则打印出1,2,3一直到最大的3位数即999。分析:1、这是一个典型的大数加法问题,无论是int还是long long类型多无法表示。所以在解决大数问题时,通常是使用字符串或者数组实现其功能2、在大数的加法中,我们需要注意的问题是进位问题。3、在该题中还需要判断是否为最大的n位整数。这里需要一个小技巧,我们只需判断最高位(第...

2018-03-17 23:28:00 165

原创 二进制中1的个数

问题描述:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1 因此如果输入9,该函数输出2; 1 package Problem15; 3 public class NumberOf1 { 8 /** 9 * @param args10 */(如果输入负数,则右移最高位补1,最终变为OxFFFFFFFF,从而引...

2018-03-16 11:41:27 227

原创 剪绳子

题目描述:给你一根长度为n的绳子,请把绳子剪成m段 (m和n都是整数,n>1并且m>1)每段绳子的长度记为k[0],k[1],…,k[m].请问k[0]k[1]…*k[m]可能的最大乘积是多少?例如,当绳子的长度为8时,我们把它剪成长度分别为2,3,3的三段,此时得到的最大乘积是18.思路:首先定义函数f(n)为把长度为n的绳子剪成若干段后各段长度乘积的最大值。在剪第一刀时,我们有n-...

2018-03-16 11:01:19 242

原创 机器人的运动范围

题目描述: 地上有一个m行n列的方格。一个机器人从坐标(0,0)的格子开始移动,它每次可以向左,向右,向上,向下移动一格,但不能进入行坐标和列坐标的位数之和大于k的格子。例如:当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18;但它不能进入方格(35,38),因为3 + 5+3+8 = 19.请问该机器人最多能到达多少个格子?                       ...

2018-03-16 10:20:55 135

原创 矩阵中的路径(回溯法)

题目描述:请设计一个函数,用来推断在一个矩阵中是否存在一条包括某字符串全部字符的路径。路径能够从矩阵中随意一格開始。每一步能够在矩阵中间向左、右、上、下移动一格。假设一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。比如在以下的3*4的矩阵中包括一条字符串”bcced”的路径。但矩阵中不包括字符串“abcb”的路径,因为字符串的第一个字符b占领了矩阵中的第一行第二格子之后,路径不能再次进入...

2018-03-14 22:42:42 358

原创 旋转数组的最小数字

题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0思路:利用二分法,找到中间的数,然后和最左边的值进行比较,若大于最左边的数,则最左边从mid开始,若小于最右边值,则最右边...

2018-03-14 21:56:43 102

原创 斐波那契数列

题目一描述:写一个函数,输入n,求斐波那契数列的第n项                斐波那契数列的定义如下: n=0,f(n)=0 ;n=1,f(n)=1 n>1;f(n)=f(n-1)+f(n-2).思路:递归的效率低,使用循环方式。解法一:用递归解决,但是存在很严重的效率问题,做了很多次的重复计算13 public static int Fib1(int n) {14 ...

2018-03-14 17:53:03 186

原创 用两个栈实现队列

题目描述:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。思路:一个栈压入元素,而另一个栈作为缓冲,将栈1的元素出栈后压入栈2中再出栈。分析:1. 在队列尾部插入节点:直接在stack1中压入元素2. 在队列头部删除节点:1> 当stack2不为空时,在stack2栈顶的元素是先进入队列...

2018-03-14 17:10:42 111

原创 二叉树的下一个节点

题目描述:给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。思路:若节点右孩子存在,则设置一个指针从该节点的右孩子出发,一直沿着指向左子结点的指针找到的叶子节点即为下一个节点;若节点不是根节点且该节点是其父节点的左孩子,则返回父节点;否则继续向上遍历其父节点的父节点,重复之前的判断,返回结果/* 2 public...

2018-03-14 16:53:52 98

原创 由前序和中序遍历重建二叉树

题目描述:输入某二叉树的前序遍历和中序遍历结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不包含重复的数字。例如输入前序遍历序列:{1,2,4,7,3,5,6,8}和中序遍历{4,7,2,1,5,3,8,6},则重建出图中所示二叉树并且输出它的头结点。重建的二叉树:思路:先找出根节点,然后利用递归方法构造二叉树解法一:package Problem6; 3 /* 重建二叉树 ...

2018-03-14 16:27:59 169

原创 从尾到头打印链表

题目描述:输入一个链表的头结点,从尾到头反过来打印出每个结点的值.思路:借助栈实现,或使用递归的方法。时间复杂度:O(n),空间复杂度:O(n)解法一:使用栈(Stack)来实现package Problem5; 3 import java.util.Stack; 5 //首先定义链表结构 6 class LinkNode{ 7 LinkNode next; 8 int ...

2018-03-14 15:39:47 102

原创 替换字符串中的空格

题目描述:请实现一个函数,将字符串的每个空格替换为"%20"。例如输入"We are happy",则输出"We%20are%20happy."。思路:从后往前复制,数组长度会增加,或使用StringBuilder、StringBuffer类        使用StringBuilder、StringBuffer类相当于构建一个新的字符串,将原来的字符串按照顺序依次添加到新的字符串中。packag...

2018-03-12 22:32:14 131

原创 二维数组中查找目标值

题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下的顺序排序。 完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否包含该整数。 package Problem3; 2 3 public class Find { 4 5 /* 6 * 题目描述:二维数组中的查找 7 * 在一个二维数组中,每一行都按照从左到右递...

2018-03-12 22:10:28 805

转载 单例设计模式

1.单例模式的定义单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。2.单例模式的特点单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。3.单例模式的应用在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能有一个Prin...

2018-03-12 16:34:26 383

原创 剑指offer目录(进行中。。。)

赋值运算函数思路:将返回值类型声明为该类型的引用把传入的参数类型声明为常量引用释放实例自身已有的内存判断传入的参数和当前的实例是不是同一个实例单例设计模式数组中重复的数字二维数组中查找目标值替换字符串中的空格从尾到头打印链表(用栈的思想实现链表的倒序输出)由前序和中序遍历重建二叉树二叉树的下一个节点(中序遍历)用两个栈实现队列斐波那契数列的第n项(青蛙跳台阶)求旋转数组的最小数字(有序数组中使用二...

2018-03-12 16:14:38 363

空空如也

空空如也

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

TA关注的人

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