自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 URLEncode 报错:Unhandled exception:java.io.UnsupportedEncodingException

需要try-catch,可以加上试一试:

2019-10-21 11:13:20 7348

原创 今天开始学Java 名字的漂亮度

题目描述给出一个名字,该名字有26个字符串组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。 每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个字母拥有相同的“漂亮度”。字母忽略大小写。 给出多个名字,计算每个名字最大可能的“漂亮度”。 输入描述:整数N,后续N个名字输出描述:每个名称可能的最大漂亮程度示例1输入2zhangsanlisi输出192101//其实就是利...

2018-04-19 23:02:42 390

原创 今天开始学Java 如果统计的个数相同,则按照ASII码由小到大排序输出 。

题目描述如果统计的个数相同,则按照ASII码由小到大排序输出 。如果有其他字符,则对这些字符不用进行统计。实现以下接口:    输入一个字符串,对字符中的各个英文字符,数字,空格进行统计(可反复调用)    按照统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASII码由小到大排序输出    清空目前的统计结果,重新统计调用者会保证:输入的字符串以‘\0’结尾。  输入描述:输入一串字符。...

2018-04-04 22:57:39 944

原创 今天开始学Java 字符串分割

题目描述连续输入字符串(输出次数为N,字符串长度小于100),请按长度为8拆分每个字符串后输出到新的字符串数组,长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。首先输入一个整数,为要输入的字符串个数。例如:输入:2      abc      12345789输出:abc00000      12345678      90000000接口函数设计如下:/****************...

2018-04-04 22:14:31 143

原创 今天开始学Java 计算一个数字的立方根,不使用库函数

题目描述•计算一个数字的立方根,不使用库函数详细描述:•接口说明原型:public static double getCubeRoot(double input)输入:double 待求解参数返回值:double  输入参数的立方根输入描述:待求解参数 double类型输出描述:输入参数的立方根 也是double类型示例1输入216输出6.0方法一:使用牛顿迭代法:牛顿迭代法。设f(x)=x...

2018-04-04 20:06:50 4663 2

转载 今天开始学Java 匈牙利算法应用之素数伴侣

题目描述题目描述若两个正整数的和为素数,则这两个正整数称之为“素数伴侣”,如2和5、6和13,它们能应用于通信加密。现在密码学会请你设计一个程序,从已有的N(N为偶数)个正整数中挑选出若干对组成“素数伴侣”,挑选方案多种多样,例如有4个正整数:2,5,6,13,如果将5和6分为一组中只能得到一组“素数伴侣”,而将2和5、6和13编组将得到两组“素数伴侣”,能组成“素数伴侣”最多的方案称为“最佳方案...

2018-04-03 23:07:28 1102 1

转载 今天开始学Java 匈牙利算法

原博主地址:https://blog.csdn.net/dark_scope/article/details/8880547匈牙利算法是由匈牙利数学家Edmonds于1965年提出,因而得名。匈牙利算法是基于Hall定理中充分性证明的思想,它是部图匹配最常见的算法,该算法的核心就是寻找增广路径,它是一种用增广路径求二分图最大匹配的算法。-------等等,看得头大?那么请看下面的版本:通过数代人的...

2018-04-03 22:58:09 423

原创 输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。

题目描述输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。     /**     * 统计出英文字母字符的个数。     *      * @param str 需要输入的字符串     * @return 英文字母的个数     */    public static int getEnglishCharCount(String str)    {        return ...

2018-04-02 22:31:24 467

转载 今天开始学Java 数对问题(复杂度问题)

题目:有x与y整数数对,x与y均不大于n,x除以y的余数大于等于k。思路:这个题目看起来很简单,只需要两个循环就可以做出来,但是两个循环复杂度太高了,想想如果n=10^5的话复杂度会有多高?这里提供一个群里大佬的思路,只需要一个循环可以说是找规律吧,首先除数i是从k+1开始取到n,被除数先取从k到i的数字,这样可以保证得到的余数是大于等于k的。然后再让被除数加上除数的和得到另一个被除数,这样得到余...

2018-03-27 22:59:24 320

原创 今天开始学Java 开发一个坐标计算工具

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

2018-03-26 22:33:18 520

原创 今天开始学Java 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。

题目描述输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。输入描述: 输入一个整数(int类型)输出描述: 这个数转换成2进制后,输出1的个数示例1输入5输出2public class Main{    public static void main(String[] args){        Scanner sc =new Scanner(System.in);     ...

2018-03-25 22:49:31 1684

原创 今天开始学Java 给定n个字符串,请对n个字符串按照字典序排列。

题目描述给定n个字符串,请对n个字符串按照字典序排列。输入描述:输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。输出描述:数据输出n行,输出结果为按照字典序排列的字符串。示例1输入9captocatcardtwotooupboatboot输出boatbootcapcardcattotootwoup...

2018-03-25 22:39:22 6362

转载 今天开始学Java 求数组里差值为k的数组对 去重

532. K-diff Pairs in an ArrayGiven an array of integers and an integer k, you need to find the number of unique k-diff pairs in the array. Here ak-diff pair is defined as an integer pair (i, j), where...

2018-03-24 22:08:40 559

原创 今天开始学Java log2N的表示

在刷题过程中需要使用到log2N,但是java中只有log(double)N,log10等等函数,这个时候就要用到初中学到的知识了(反正我已经快忘得差不多了)首先要弄明白一个初中学到的公式log2N=logeN/loge2,logeN代表以e为底的N的对数,loge2代表以e为底的2的对数,这就是换底公式。在java中表示就是:log(N)/log(2)注意这个函数的参数必须是double类型的。...

2018-03-24 21:29:31 2916

转载 今天开始学Java 给你六种面额 1、5、10、20、50、100 元的纸币

给你六种面额 1、5、10、20、50、100 元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0~10000的非负整数)的不同组合的个数。 输入描述:输入包括一个整数n(1 ≤ n ≤ 10000)输出描述:输出一个整数,表示不同的组合方案数输入例子1:1输出例子1:1这是牛客网上某大佬给出的解析,感觉就是一个不断递归的问题。import java.util.Scanner;pub...

2018-03-22 10:38:05 9371 3

原创 今天开始学Java 美团编程题——大富翁游戏

大富翁游戏,玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步。求玩家走到第n步(n<=骰子最大点数且是方法的唯一入参)时,总共有多少种投骰子的方法。 输入描述:输入包括一个整数n,(1 ≤ n ≤ 6)输出描述:输出一个整数,表示投骰子的方法输入例子1:6输出例子1:32public class Main{    public stati...

2018-03-21 21:55:32 1717

转载 今天开始学Java 现在现在有一台机器,这台机器可以接收两种形式任务:

题目描述 现在现在有一台机器,这台机器可以接收两种形式任务:(1)任务列表,任务列表里面有N个任务,对于第i个任务,机器在Ti时间开始执行,并在1个单位时间内做完。(2)临时任务,机器可以在任意时间接收一个临时任务,但任务列表里面的任务优先级要高于临时任务,也就是说当机器空闲的时候才会执行临时任务。现在机器已经接收一个任务列表。接下来会有M个临时任务,我们想知道每个临时任务何时被...

2018-03-20 23:22:53 506

转载 今天开始学Java 二叉树的遍历

import java.util.Stack;public class Tree { public class TreeNode{ int val; TreeNode right; TreeNode left; public TreeNode(int val){ this.val = val; } } //递归前序遍历 public void DGpreOder(TreeNode B...

2018-03-15 13:10:56 182

原创 今天开始学Java 给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。

给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输入值小于1000。如,输入为10, 程序应该输出结果为2。(共有两对质数的和为10,分别为(5,5),(3,7)) 输入描述:输入包括一个整数n,(3 ≤ n < 1000)输出描述:输出对数输入例子1:10输出例子1:2public class Main{    public static boolean ju...

2018-03-14 22:36:51 2356

原创 今天开始学Java geohash编码

geohash编码:geohash常用于将二维的经纬度转换为字符串,分为两步:第一步是经纬度的二进制编码,第二步是base32转码。 此题考察纬度的二进制编码:算法对纬度[-90,90]通过二分法进行无限逼近(取决于所需精度,本题精度为6)。注意,本题进行二分法逼近过程中只采用向下取整来进行二分,针对二分中间值属于右区间。算法举例如下: 针对纬度为80进行二进制编码过程: 1) 区间[-90, 9...

2018-03-14 21:20:52 195

原创 今天开始学Java 将相同索引的数值进行求和运算,输出按照key值升序进行输出。

题目描述数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。输入描述:先输入键值对的个数然后输入成对的index和value值,以空格隔开输出描述:输出合并后的键值对(多行)示例1输入40 10 21 23 4输出0 31 23 4import java.util.Scanner;import java.util....

2018-03-14 13:03:13 576

原创 今天开始学Java 写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。

题目描述写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。输入描述:输入一个正浮点数值输出描述:输出该数值的近似整数值示例1输入5.5输出6public class Main{    //方法一:暴力转换    /**    public static void main(String [] args){        Scann...

2018-03-14 11:10:46 2419

原创 因特网的组成

从工作的方式上来看,因特网可以分为一下几个部分:1、边缘部分:主机组成(用户可以直接使用),这部分主要是供用户主机之间进行通信和资源共享;2、核心部分:这一部分主要是由网络和连接网络的路由器组成。为边缘部分提供服务。边缘部分:这部分通常被称为端系统。端系统之间的通信方式有两种:客户端/服务器,P2P。客户端/服务器:是指通信中涉及到的两个通信进程,客户-服务器方式所描述的进程之间服务与被服务的关系...

2018-03-12 23:00:15 3784

原创 今天开始学Java 实现删除字符串中出现次数最少的字符

题目描述实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。 输入描述:字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。输出描述:删除字符串中出现次数最少的字符后的字符串。示例1输入abcdd输出dd这里需要注意ArrayList.remove()的用法,有坑:1、使用remove(ind...

2018-03-10 23:16:47 998

原创 今天开始学Java 现在有一棵合法的二叉树,树的节点都是用数字表示,现在给定这棵树上所有的父子关系,求这棵树的高度

题目描述现在有一棵合法的二叉树,树的节点都是用数字表示,现在给定这棵树上所有的父子关系,求这棵树的高度输入描述:输入的第一行表示节点的个数n(1 ≤ n ≤ 1000,节点的编号为0到n-1)组成,下面是n-1行,每行有两个整数,第一个数表示父节点的编号,第二个数表示子节点的编号输出描述:输出树的高度,为一个整数示例1输入50 10 21 31 4输出3这道题开始我是想到用tree型结...

2018-03-10 21:25:51 4249

原创 今天开始学Java 查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。

题目描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。输入描述:输入两个字符串输出描述:返回重复出现的字符示例1输入abcdefghijklmnopabcsafjklmnopqrstuvw输出jklmnopimport java.util.Scanner;public class Main{    public static void main(String []...

2018-03-10 15:30:47 1341

原创 今天开始学Java 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C

题目描述如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的: 原型:voidmatrix_multiply(int *m1,int *m2,int *r, int x, int y, int z);输入参数:    int *m1:x行y列的矩阵(array1[x][y])    int *m2:y行z列的矩阵(a...

2018-03-10 13:40:34 640

原创 今天开始学Java 有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。

题目描述有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝? 输入描述:...

2018-03-10 10:21:18 9014 1

原创 当我们输入网址点击回车后会发生什么

首选要找到Http协议是基于Tcp/ip协议的,那么我们就需要一个到Tcp/ip层的API,就是socket。要建立socket连接(IP地址和端口号),就要对URL进行域名解析,我们本地主机配置网络会填写一个DNS,本机会把url发给这个DNS服务器,如果服务器找不到这个url对应的IP地址和端口号的话,就从上级发送,直到发送到根服务器得到结果。现在请求连接建立成功了,给web服务器发送请求,操...

2018-03-10 09:46:26 412

原创 今天开始学Java 二分查找算法实现

预防针:首先得是个有序的序列,然后从序列的一半开始比较,若指定元素大于mid,那么就在mid的右边进行查找;如果小于就在mid的左边进行查找;如果等于就返回mid。Java代码 public static int find(int[] a,int key) { int low = 0; int high = a.length-1; while(low <= high){ //这里一...

2018-03-10 08:45:56 154

原创 今天开始学Java 排序算法之堆排序

大顶堆用于升序排列:经过多次比较把最大的元素放到根结点(相当于找到序列里面的最大元素),然后再将这个最大元素放到叶结点,这个叶结点就固定不动了,继续比较其它结点,从剩下的结点里面供一个最大元素出来放到根结点,依次循环。public class InsertSort { public static void sort(int[] a){ //formulate the bigtoptree fo...

2018-03-09 23:06:58 118

原创 今天开始学Java 排序算法之归并排序

思路:它的最直观的想法是将两个有序子序列通过从左到右两两元素相互比较的排序的方法,那么如果使两个子序列有序呢,那就再将这两个子序列两两分,一直分下去的话最后就得到长度为1的各个子序列,这时就相当于每个子序列都是有序的了,最后按照之前的最直观的想法两两比较合并。甩上代码来:public static void sort(int[] a,int low,int mid,int high){ int[...

2018-03-09 22:42:47 94

原创 今天开始学Java 排序算法之简单选择排序

思路:开始假定第一个元素是最小元素,然后从剩下的元素中选一个最小(或者最大)的,与第一个元素交换位置。接着从第二个元素开始是最小元素,从剩下的元素中选一个最小(或者最大)的,与第二个元素交换位置。以此类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止。public static void sort(int[] a){ for(int i =0;i<a.length-...

2018-03-09 21:57:30 107

原创 今天开始学Java 排序算法之快速排序

思路:先选一个“标尺”, 用它把整个队列过一遍筛子, 以保证:其左边的元素都不大于它,其右边的元素都不小于它。排序问题就被分割为两个子区间。 再分别对子区间排序就可以了。不明白的话看代码:public class InsertSort { public static int sort(int[] a,int start,int end){ int base = a[end]; while(st...

2018-03-09 21:39:22 114

原创 今天开始学Java 排序算法之冒泡排序

思路:其实就是元素之间两两比较,第一趟排序后将最大的元素放到了末尾。然后再从头开始到倒数第二个元素之间再进行两两比较,以此类推。Java代码public static void bubble_sort(int[] arr) {          int i, j, temp, len = arr.length;          for (i = 0; i < len - 1; i++)  ...

2018-03-09 20:31:36 93

原创 今天开始学Java 排序算法之希尔排序

思路:其实就是增量分割子序列+直接插入排序Java代码如下:public void sort(int[] a){ int d = a.length; while(true){     d = d/2; for(int i = 0;i<d;i++ ){ for (int j = i+d;j<a.length;j=j+d){ if(a[j-d]>a[j])...

2018-03-09 20:21:39 93

原创 今天开始学Java 排序算法之插入排序

直接插入排序方法是稳定的算法,其平均时间复杂度O(n^2)先打个预防针:稳定排序的算法有直接插入排序、冒泡排序、归并排序。不稳定的排序算法有希尔排序、快速排序、简单选择排序和堆排序。时间复杂度为O(n^2)的有直接插入排序、冒泡排序、快速排序、简单选择排序时间复杂度为O(nlogn)的有堆排序和归并排序空间复杂度为O(n)的是归并排序,O(logn)是快速排序,其余的都是O(1)思想:先将序列中第...

2018-03-09 17:17:32 83

原创 今天开始学Java 输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩

题目描述查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩      都按先录入排列在前的规则处理。   例示:   jack      70   peter     96   Tom       70   smith     67   从高到低  成绩               peter     96       jack      70       ...

2018-03-09 14:37:09 1502

转载 今天开始学Java HashMap的简单使用

map:键值对存储数据,key,value,key必须唯一Collection:list,set,queue  注意 Collections不能实例化HashMap里面有些可以操作的方法:put(key,value):向HashMap中添加数据可以通过实例化Collection将hashmap转化为hashset取出值和keyiterator():迭代器,可以迭代Collection实例hashM...

2018-03-09 12:24:56 126

原创 今天开始学Java try-catch-finally

例子:package algorithms.com.guan.javajicu;public class TestDemo{    public static String output = ””;    public static void foo(inti)    {        try        {            if (i == 1)            {        ...

2018-03-09 08:45:39 175

空空如也

空空如也

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

TA关注的人

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