随笔分类 - 剑指offer_JAVA
摘要:#include <stdio.h> #include <string.h> #define LENGTH 50 /* * 1.字符序列中有一个字符肯定是分界点,它的左边全为红色,右边全为绿色 * 2.因此 该点的左边的绿色要翻转为红色 该点右边的红色要翻转成绿色 * 3.统计每个点需要翻转的次数 从中找出最小的次数即为答案 * */ int main() { char brick[LENGTH]
        阅读全文
                
摘要://we have defined the necessary header files here for this problem. //If additional header files are needed in your program, please import here. #include #include #define LENGHT 1000 void ...
        阅读全文
                
摘要:#include #define N 500 int height[N]; int n; int main() { scanf("%d", &n); if (n res[i] ? max : res[i]; } printf("%d", max); return 0; }
        阅读全文
                
摘要:题目描述 在 x 轴上有相互挨着的矩形, 这些矩形有一个边紧贴着 x 轴,现在给出每个矩形的长宽, 所有的矩形看作整体当作一个画布, 则可以在这个画布上画出的最大的矩形的面积是多少。(画出的矩形长和高平行于X,Y轴) 在 x 轴上有相互挨着的矩形, 这些矩形有一个边紧贴着 x 轴,现在给出每个矩形的
        阅读全文
                
摘要:题目描述 从前有一个叫做”H湖”的地方,”H湖”的居民生活在不同的小岛上,当他们想去其他的小岛时都要通过划小船或者小岛之间的桥来实现.现在政府想实现”H湖”的全畅通!(不一定有直接的桥相连,只要互相间接通过桥可达即可).”H湖”已经造出了一些桥出来连接某两个岛.问最少还需要建设几座桥? 从前有一个叫
        阅读全文
                
摘要:题目描述 苗苗今天刚刚学会使用小括号,不过他分不清小中大括号和尖括号,不知道怎么使用其他括号,他认为(>以及{]是正确的(其实是错误的),你能帮助他判断括号是否使用正确(匹配)吗? 苗苗今天刚刚学会使用小括号,不过他分不清小中大括号和尖括号,不知道怎么使用其他括号,他认为(>以及{]是正确的(其实是
        阅读全文
                
摘要:/* 题目描述 今盒子里有n个小球,A、B两人轮流从盒中取球,每个人都可以看到另一个人取了多少个,也可以看到盒中还剩下多少个,并且两人都很聪明,不会做出错误的判断。 我们约定: 每个人从盒子中取出的球的数目必须是:1,3,7或者8个。 轮到某一方取球时不能弃权! A先取球,然后双方交替取球,直到取完。 被迫拿到最后一个球的一方为负方(输方) 请编程确定出在双方都不判断失误的情况下,对于特定的初始球
        阅读全文
                
摘要:题目描述 将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。 package solution; import java.util.Sca
        阅读全文
                
摘要:题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 public static int JumpFloorII(int target) { int[] a = new int[target+1]; a[0] = 1; a[1] =
        阅读全文
                
摘要:package solution; public class Fibonacci { /* * f(n) = f(n-1) + f(n-2) n>1 * f(0) = 0 * f(1) = 1 * */ public static void main(String[] args) { System.out.print...
        阅读全文
                
摘要:思路如下: 所谓整数拆分就是将一个正整数写成如下形式:n = m1+m2+m3+…mi(1<=mi<=n) 则称{m1,m2,…,mi}为n的一个划分,{m1,m2,m3,…mi}中任意值不能大于m,我们把这称之为n的m划分,记作f(n,m)。那么对于f(n,m)我们有以下几种情况讨论:1.当n =
        阅读全文
                
摘要:tips:断给定的整数n能否表示成连续的m(m>1)个正整数之和.
        阅读全文
                
摘要:1 package algorithms; 2 3 public class Exp5_2 { 4 //画图解决 5 public ListNode oddEvenList(ListNode head) { 6 if (head == null) 7 return null; 8 ListNode pOd...
        阅读全文
                
摘要:package algorithms; /** * 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 示例 1: 输入: [ [1,1,1], * [1,0,1], [1,1,1] ] 输出: [ [1,0,1], [0,0,0], [1,0,1] ] 示例 2: 输入: [ [0,1,2,0], * [3,4,5,2], [1,3...
        阅读全文
                
摘要:其实也可以自己实现一个简易的hashmap用来解决该道题 因为char(8位)有256种取值 所以可以创建一个长度为256的数组 数组的下标即为ascii码值 数组的值即为出现的次数,如下所示:
        阅读全文
                
摘要:package algorithms; import java.util.HashMap; /** * 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。 * 请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 */ pu...
        阅读全文
                
摘要:1 package algorithms; 2 3 /** 4 * 请实现一个函数,将一个字符串中的每个空格替换成“%20”。 5 * 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 6 * 7 */ 8 //先统计出字符串中空格的数量 确定出新串的长度(原串长度+空格数量*2) 9 //举一...
        阅读全文
                
摘要:1 package algorithms; 2 3 /** 4 * 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 5 * 例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。 6 * 由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。 7 * 如果不存在则输出0。 8 * 9 * **/ 10 public class...
        阅读全文
                
摘要:1 package algorithms; 2 3 /** 4 * 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。 5 * 例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 6 * 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 7 * 8 **/ 9 /* ...
        阅读全文
                
 
                    
                
 浙公网安备 33010602011771号
浙公网安备 33010602011771号