![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Ĵava
吃口雪花
这个作者很懒,什么都没留下…
展开
-
Leetcode 191 Number of Bits and n & n -1
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/nwpu_geeker/article/details/79763511————————————————Leetcode 191 Number of 1 Bits求二进制中1的个数。发现有大佬用来(n&n-1)。觉得很神奇。...转载 2019-09-10 16:38:36 · 114 阅读 · 0 评论 -
PAT (Advanced Level) Practice1002 A+B for Polynomials (25 分)(Java实现)
Problem DescriptionThis time, you are supposed to find A+B where A and B are two polynomials.Input Specification:Each input file contains one test case. Each case occupies 2 lines, and each line co...原创 2019-07-31 20:51:10 · 186 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1055 集体照 (25 分)(Java实现)
题目描述:集体照时队形很重要,这里对给定的 N 个人 K 排的队形设计排队规则如下:每排人数为 N/K(向下取整),多出来的人全部站在最后一排;后排所有人的个子都不比前排任何人矮;每排中最高者站中间(中间位置为 m/2+1,其中 m 为该排人数,除法向下取整);每排其他人以中间人为轴,按身高非增序,先右后左交替入队站在中间人的两侧(例如5人身高为190、188、186、1...原创 2019-07-22 23:57:29 · 210 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1074 宇宙无敌加法器 (20 分)(Java实现)
题目描述:地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个 PAT 星人都必须熟记各位数字的进制表,例如“……0527”就表示最低位是 7 进制数、第 2 位是 2 进制数、第 3 位是 5 进制数、第 4 位是 10 进制数,等等。每一位的进制 d 或者是 0(表示十进制)、或者是...原创 2019-07-26 21:17:58 · 173 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1048 数字加密 (20 分)(Java实现)
题目描述:本题要求实现一种数字加密方法。首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10、Q 代表 11、K 代表 12;对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10。这里令个位为第 1 位。输入格式:输入在一行中依次给出 A 和 B,均为不超...原创 2019-07-22 12:56:16 · 157 阅读 · 0 评论 -
Java设计模式之单例设计模式
单例模式定义(维基百科):一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称)单例模式的几种实现方式饿汉式类装载的时候,就会实例化类的对象,由于类装载的时候是线程安全的,所以饿汉式实现单例是线程安全的,但由于装载类的时候就会创建类实例对象,所以类的装载比较慢。并且不能实现懒加载,当这个类实例不会被使用的时,就会浪费空间。...原创 2019-07-21 21:33:08 · 79 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1002 写出这个数 (20 分)(Java实现)
其他题目答案(持续更新)https://blog.csdn.net/qq_39424178/article/details/98243681题目描述:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 1010010^{100}10100。输出格式:在一行内输出 n 的各位数字之...原创 2019-08-02 21:41:07 · 166 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1010 一元多项式求导 (25 分)(Java实现)
题目描述:设计函数求一元多项式的导数。(注:xnx^nxn (n为整数)的一阶导数为nxn−1nx^{n−1}nxn−1 。)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 ...原创 2019-07-17 23:10:34 · 202 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1054 求平均值 (20 分)(Java实现)
题目描述:本题的基本要求非常简单:给定 N 个实数,计算它们的平均值。但复杂的是有些输入数据可能是非法的。一个“合法”的输入是 [−1000,1000] 区间内的实数,并且最多精确到小数点后 2 位。当你计算平均值的时候,不能把那些非法的数据算在内。输入格式:输入第一行给出正整数 N(≤100)。随后一行给出 N 个实数,数字间以一个空格分隔。输出格式:对每个非法输入,在一行中输出 ER...原创 2019-07-24 22:18:16 · 150 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1067 试密码 (20 分)(Java实现)
题目描述:当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死。本题就请你实现这个小功能。输入格式:输入在第一行给出一个密码(长度不超过 20 的、不包含空格、Tab、回车的非空字符串)和一个正整数 N(≤ 10),分别是正确的密码和系统允许尝试的次数。随后每行给出一个以回车结束的非空字符串,是用户尝试输入的密码。输入保证至少有一次尝试。当读到一...原创 2019-07-24 22:04:38 · 173 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1033 旧键盘打字 (20 分)(Java实现)
题目描述:旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过 10510^5105个字符的串。可用的字符包括字母[a-z, A-Z] 数字 0-9 以及下划线 _(代表空格), . -...原创 2019-07-17 21:14:47 · 206 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1046 划拳 (15 分)(Java实现)
题目描述:划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。输入格式:输入第一行先给出一个正整数 N(≤100),随后 N 行,每行给出一轮划拳...原创 2019-07-17 20:57:21 · 133 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1020 月饼 (25 分)(Java实现)
题目描述:月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是...原创 2019-07-26 21:41:37 · 221 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1069 微博转发抽奖 (20 分)(Java实现)
题目描述:小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包。请你编写程序帮助他确定中奖名单。输入格式:输入第一行给出三个正整数 M(≤ 1000)、N 和 S,分别是转发的总量、小明决定的中奖间隔、以及第一位中奖者的序号(编号从 1 开始)。随后 M 行,顺序给出转发微博的网友的昵称(不超过 20 个字符、不包含空格回车的非空字符串)...原创 2019-07-27 18:21:33 · 154 阅读 · 0 评论 -
使用MinGW gcc 创建DDL和调用DDL以及 Java 利用JNI 调用 dll
使用MinGW gcc 创建DDL和调用DDL使用 gcc 编译生成 ddl 文件所会使用到的 gcc 命令选项解释-Wall生成所有警告信息-o FILENAME生成指定的输出文件,用在生成可执行文件时。-shared生成共享目标文件。通常用在建立共享库时。-c只激活预处理,编译,和汇编,也就是他只把程序做成obj文件,会生成 .0 文件-...原创 2019-09-06 10:00:10 · 1322 阅读 · 0 评论 -
求两个数的最大公约数(五种方法)
求两个数的最大公约数一、 问题描述与分析二、 算法设计(或算法步骤)1. 欧几里得算法2. 枚举法3. 公共因子积4. 更相减损术5. Stein算法求两个数的最大公约数一、问题描述与分析设有 m 和 n 两个正整数,求 m 和 n 的最大公因子。二、算法设计(或算法步骤)欧几里得算法算法简介欧几里德算法是用来求两个正整数最大公约数的算法。是由古希腊数学家欧几里德在其著...原创 2019-09-03 16:56:20 · 32655 阅读 · 8 评论 -
IDEA报错:Error : Java 不支持发行版本5
将下面三张图片对应位置修改一致即可解决问题(已解决)原创 2019-09-01 23:28:19 · 6992 阅读 · 7 评论 -
PAT (Advanced Level) Practice1013 Battle Over Cities (25 分)(Java)
Problem DescriptionIt is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from/toward that city are closed. We must know i...原创 2019-08-30 12:42:37 · 175 阅读 · 0 评论 -
Java 二维数组的四种拷贝方法
Java 二维数组的四种拷贝方法for 循环System.arrayCopy()clone() 方法Arrays.copyOf()Java 二维数组(多维数组)的理解参考页面 geeksforgeeksMultidimensional Arrays can be defined in simple words as array of arrays. Data in multidi...原创 2019-08-29 12:38:28 · 3272 阅读 · 0 评论 -
PAT (Advanced Level) Practice1006 Sign In and Sign Out (25 分)(Java示例)
其他题解(持续更新)https://blog.csdn.net/qq_39424178/article/details/98111146Problem DescriptionAt the beginning of every day, the first person who signs in the computer room will unlock the door, and the la...原创 2019-08-10 21:43:39 · 251 阅读 · 0 评论 -
Java设计模式-策略设计模式(代码实现)
策略设计模式定义定义一个算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户策略模式模拟(Head First 设计模式例子)类的 UML 图源代码Duck(抽象类)package xyz.snowflake.strategy.book;/** * @author snowflake * @email 278121951@qq.com *...原创 2019-08-10 15:41:41 · 384 阅读 · 0 评论 -
PAT (Advanced Level) Practice1008 Elevator (20 分)(Java实现)
Problem DescriptionThe highest building in our city has only one elevator. A request list is made up with N positive numbers. The numbers denote at which floors the elevator will stop, in specified o...原创 2019-08-14 19:33:37 · 127 阅读 · 0 评论 -
Java9 Class类 newInstance 过时 替换的方法
Java9 Class类 newInstance 过时Class.forName("类的全限定名").newInstance();被替换为Class.forName("类的全限定名").getDeclaredConstructor().newInstance();源码说明 /** * Creates a new instance of the class repres...原创 2019-08-01 23:54:17 · 9351 阅读 · 1 评论 -
PAT (Advanced Level) Practice1003 Emergency (25 分)(Java实现)
Problem DescriptionAs an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in...原创 2019-08-01 21:47:49 · 272 阅读 · 0 评论 -
PAT (Advanced Level) Practice1001 A+B Format (20 分)(Java实现)
Problem DescriptionCalculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).Input Specifica...原创 2019-07-24 20:25:22 · 165 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1019 数字黑洞 (20 分)(Java实现)
题目描述:给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的 6174,这个神奇的数字也叫 Kaprekar 常数。例如,我们从6767开始,将得到7766 - 6677 = 10899810 - 0189 = 96219621 -...原创 2019-07-24 18:56:27 · 105 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1081 检查密码 (15 分)(Java实现)
题目描述本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成,并且只能有英文字母、数字和小数点 .,还必须既有字母也有数字。输入格式:输入第一行给出一个正整数 N(≤ 100),随后 N 行,每行给出一个用户设置的密码,为不超过 80 个字符的非空字符串,以回车结束。输出格式:对每个用户的密码,在一行中输出系统反馈信息,分以下5...原创 2019-07-16 22:21:11 · 214 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1037 在霍格沃茨找零钱 (20 分)(Java实现)
题目描述:如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱 P 和他实付的钱 A,你的任务是写一个程序来计算他应该被找的零钱。输入格式:输入在 1 行中分别给出 P 和 A,格式为 Galleon.Sickle.Knut,其间用...原创 2019-07-18 22:40:29 · 164 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1022 D进制的A+B (20 分)(Java实现)
题目描述:输入两个非负 10 进制整数 A 和 B (≤230−1)(≤2^{30} −1)(≤230−1),输出 A+B 的 D (1<D≤10)(1<D≤10)(1<D≤10)进制数。输入格式:输入在一行中依次给出 3 个整数 A、B 和 D。输出格式:输出 A+B 的 D 进制数。输入样例:123 456 8输出样例:1103...原创 2019-07-18 20:56:39 · 100 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1014 福尔摩斯的约会 (20 分)(Java实现)
题目描述:大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE3485djDkxh4hhGE3485djDkxh4hhGE 2984akDfkkkkggEdsb2984akDfkkkkggEdsb2984akDfkkkkggEdsb KaTeX parse error: Expected 'EOF', got '&' at position 2: s&̲...原创 2019-07-18 18:37:57 · 112 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1061 判断题 (15 分)
题目描述判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。输入格式:输入在第一行给出两个不超过 100 的正整数 N 和 M,分别是学生人数和判断题数量。第二行给出 M 个不超过 5 的正整数,是每道题的满分值。第三行给出每道题对应的正确答案,0 代表“非”,1 代表“是”。随后 N 行,每行给出一个学生的解答。数字间均以空格分隔。输出格式:按照输入的顺...原创 2019-07-15 22:30:22 · 153 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1024 科学计数法 (20 分)
题目描述科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+−][1−9].[0−9]+E[+−][0−9]+[+-][1-9].[0-9]+E[+-][0-9]+[+−][1−9].[0−9]+E[+−][0−9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以科学计数法的格式给出实数 A,请编写...原创 2019-07-15 21:11:00 · 127 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1040 有几个PAT (25 分)
题目描述字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位§,第 4 位(A),第 6 位(T)。现给定字符串,问一共可以形成多少个 PAT?输入格式:输入只有一行,包含一个字符串,长度不超过10510^5105,只包含 P、A、T 三种字母。输出格式:在一行中输出给定字符串中包含多少个 ...原创 2019-06-23 21:00:18 · 101 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1023 组个最小数 (20 分)
题目描述给定数字 0-9 各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意 0 不能做首位)。例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就是 10015558。现给定数字,请编写程序输出能够组成的最小的数。输入格式:输入在一行中给出 10 个非负整数,顺序表示我们拥有数字 0、数字 1、……数字 9 的个数。整数间用一个...原创 2019-06-11 10:53:41 · 117 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文) 1021 个位数统计 (15 分)
题目描述给定一个K位整数N=dk−110k−1+d1101+d0(0<=di<=9,i=0,...,k−1,dk−1>0)N = d_{k-1}10^{k-1} + d_110^1 + d_0(0 <= d_i <= 9, i = 0,...,k - 1, d_{k - 1} > 0)N=dk−110k−1+...原创 2019-06-10 22:03:50 · 126 阅读 · 0 评论 -
几大排序算法
几大排序算法直接插入排序算法描述从第一个元素开始,该元素可以认为已经被排序取出下一个元素,在已经排序的元素序列中从后向前扫描如果该元素(已排序)大于新元素,将该元素移到下一位置重复步骤3,直到找到已排序的元素小于或者等于新元素的位置将新元素插入到该位置后重复步骤2~5算法实现(Java)/** * 直接插入排序 */public void insertSort(int...原创 2019-06-08 20:27:01 · 97 阅读 · 0 评论 -
判断一颗二叉树是否是完全二叉树
判断一颗二叉树是否是完全二叉树方法一,采取标记的方法非完全二叉树的三种情况思路分析:通过层序遍历来遍历树中的每一个非空结点遍历到的每一个结点都分为四种情况1.既有左孩子也有右孩子操作:将左孩子和右孩子入队列2.只有左孩子操作:1.首先判断标记是否处于激活状态,如果标记处于激活状态,直接返回 false2.满足标记条件,将标记设置为激活状态3.只有...原创 2019-05-23 22:56:03 · 7899 阅读 · 3 评论 -
junit4 学习记录
junit4 学习junit4 是什么JUnit4是一个编写可重复测试的简单框架。它是单元测试框架的xUnit体系结构的一个实例。Xunit是基于测试开发驱动的框架junit3 和 junit4 的区别:junit3 每一个测试方法前面,都必须加上 test,并且都会继承 junit.framework.TestCase 这个类,而 junit4 只需要添加 @Test 注解即可,方法...原创 2019-02-02 15:49:05 · 137 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1084 外观数列 (20 分)(Java实现)
题目描述外观数列是指具有以下特点的整数序列:d,d1,d111,d113,d11231,d112213111,...d, d1, d111, d113, d11231, d112213111, ...d,d1,d111,d113,d11231,d112213111,...它从不等于 1 的数字 d 开始,序列的第 n+1 项是对第 n 项的描述。比如第 2 项表示第 1 项有 1 个 d,所...原创 2019-07-16 22:59:33 · 212 阅读 · 0 评论 -
PAT (Basic Level) Practice (中文)1082 射击比赛 (20 分)(Java实现)
题目描述本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军;谁差得最远,谁就是菜鸟。本题给出一系列弹洞的平面坐标(x,y),请你编写程序找出冠军和菜鸟。我们假设靶心在原点(0,0)。输入格式:输入在第一行中给出一个正整数 N(≤ 10 000)。随后 N 行,每行按下列格式给出:ID x y其中 ID 是运动员的编号(由 4 位数字组成);x 和 y 是其打出的弹洞的...原创 2019-07-16 23:17:34 · 254 阅读 · 0 评论