
编程语言
文章平均质量分 87
TraceChen
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
关于数组的全排列问题,输入一个数组输出,数组中所有排列的组合,并且不允许有重复的组合
为了去除重复的排列组合使用一个Set集合,可以去除重复的组合例如:输入:1 2 3输出:1 2 31 3 22 1 32 3 13 2 13 1 2实现的代码:import java.util.*;public class Main { public static void main(String[] args){ Sca...原创 2019-10-22 11:30:58 · 1464 阅读 · 0 评论 -
IP地址黑名单,指定一个IP地址,是否在IP地址黑名单中
输入描述:第一行是一个IP地址,第二行是一个IP地址和对应的IP子网掩码192.168.12.3192.168.12.45/24输出描述:如果第一行输入的IP地址在第二行IP黑名单中,返回是1否者返回是0JAVA代码实现:import java.io.*;import java.util.*;public class Main { static bo...原创 2019-10-14 21:50:21 · 2184 阅读 · 1 评论 -
JAVA 一些小小的总结
虽然很简单,但是还是记录一下1、JAVA 中去除字符串前面的0方法一public class Solution{ public static void main(String[] args){ String result = "0000123456"; System.out.println("This is original result:"+...原创 2019-08-07 21:40:26 · 335 阅读 · 0 评论 -
十进制转换二进制,求1的个数,相同为一类?
问题:给定N个非负整数,将这N个数字按照二进制1的个数分类,二进制下1的个数相同的数字属于同一类,求最后一共有几类数字?输入描述:输入的第一行是一个正整数T(0<T<=10),表示样例个数。对于每一个样例,第一行是一个正整数N(0<N<=100),表示有多少个数字。接下来一行是N个由空格分隔的非负整数,大小不超过2^23-1输出描述:对...原创 2019-08-11 20:31:12 · 588 阅读 · 0 评论 -
B站的编程题,看似简单,其实不简单,大家来做一下
假设现在需要对一串数字字符串进行解码,我们知道改字符串的编码规则是1->A2->B...26->Z输出数字N代表有多少种可能的结果例如:输入:111输出:3对应的结果是AAA 、AK、KA这是一个使用动态规划的题目JAVA代码实现:public class Solution { public int...原创 2019-08-20 23:50:18 · 452 阅读 · 0 评论 -
剪绳子
把一根绳子剪成多段,并且使得每段的长度乘积最大。n = 2return 1 (2 = 1 + 1)n = 10return 36 (10 = 3 + 3 + 4)解题思路:贪心尽可能多剪长度为 3 的绳子,并且不允许有长度为 1 的绳子出现。如果出现了,就从已经切好长度为 3 的绳子中拿出一段与长度为 1 的绳子重新组合,把它们切成两段长度为 2 的绳子。证明:当 n...原创 2019-08-13 09:39:56 · 180 阅读 · 0 评论 -
年份的中间时刻应该是A月B日C点,则A+B+C=()
首先考虑是不是闰年,如果是闰年366天,平年356天。若是闰年366天的中间时刻是183天的子时即24点,1、3、5、7、8、10、12月为31天2月29天4、6、10月为30天1*31 + 2*29+ 3*31+4*30+5*31+6*30 =182所以中时间是7月1号24时即 A+B+C = 7+1+24 =32若是平年356天为中间时刻是182.5天即在...原创 2019-09-02 22:26:55 · 891 阅读 · 0 评论 -
输入一个字符串,字符串中有多个单词,每个单词用逗号分开,输出每个单词前后相同的个数
题目分析,每个单词使用split分开,当单词首尾相同时count加一Java代码实现:import java.util.Scanner;/** *输入一个字符串每个单词以逗号分开, * 输出每个单词的首位相同的个数 */public class Main{ public static int countStringSame(String str){ i...原创 2019-09-09 09:57:58 · 2927 阅读 · 0 评论 -
按行输入按列输出,把字符串存入二维数组中,按列的形式输出字符串
随机输入一字符串S,字符串S包含二维数组的列数N+字符串A,其中二维数组行数为存储字符串的所需最小正整数,将字符串A按行存储二维数组中,按列方向可读输出另一个字符串B,并输出列向字符串B。列字符串结尾多余的空格需去除。/** * 输入描述: * 输入字符串S,为包含二维数组的列数N和字符串A, * 二维数组列数N为数字字符,行向字符串A为数字的字符串, * 且字符串不会包括分号...原创 2019-09-09 12:13:12 · 3700 阅读 · 0 评论 -
第一行有一个整数 表示M 第二行是一个字符串,表示需要排序的一段话,包含一至多个单词,单词之间以1个空格分隔,
/** * 输入描述:第一行有一个整数 表示M * 第二行是一个字符串,表示需要排序的一段话,包含一至多个单词,单词之间以1个空格分隔, * M<=10000 * 输入单词数<=1000 字符数<=1000000 * 每个单词可能包含字母a-z A-Z,每个单词长度<=M * 输出描述:输出一至多行排版后的内容(最后换行结尾) * * 样例输入: * ...原创 2019-09-14 17:46:09 · 1543 阅读 · 0 评论 -
一个字符串序列由两个字符'['和']'组成,如果不合法,添加'['或']' 使之合法
/** * 9月14号 *题目描述: * 一个字符串序列由两个字符'['和']'组成 * 假设由三种合法形式 * 1.空 * 2.两个合法序列的拼接 * 3.[合法序列] * 如"","[]","[][]","[[]]" 都是合法形式 * 现在给定一组序列,我们可以再任意位置添加'[' 或 ']' ,使用变为合法序列 * 添加一个字符视为一次操作, * 请你找出将其便合法序...原创 2019-09-14 23:25:43 · 485 阅读 · 0 评论 -
关于数据结构的链表以及一些常规操作
package 链表;import java.util.HashMap;import java.util.HashSet;/** * 定义一个链表结点存储结构 */class Node{ int data; Node next =null; public Node(int data){ this.data = data; }}...原创 2019-09-21 18:29:01 · 151 阅读 · 0 评论 -
给定一列非负整数,求这些数连接起来能组成的最大的数。
输入描述:第一行n>0是一个正整数,表示一共有n个输入。以后每行是一个非负整数,共有n行。输出描述:n个输入的非负整数连接成的最大的数输入例子1:69876543输出例子1:9876543输入例子2:2112输出例子2:211python3实现代代码:while True: try: ...原创 2019-08-06 20:09:30 · 1298 阅读 · 0 评论 -
求两个数差的平方损失
小张用某种仪器获得了一组观测值A,A长度为n,A中每一个数都是1-255之间的整数。但是观测值A存在一定的误差,现在小张想求得最可能的真实值B,使得:B中的每一个数都是1-255的整数且与A长度相同 0< = B(i+1) -B(i) <= 3( 0 <= i < n-1) A和B之间的L2损失最小(A(i)和B(i)差的平方的和最小)要求返回最小的L2损失。...原创 2019-08-05 17:00:46 · 480 阅读 · 0 评论 -
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。InputPa...原创 2019-07-09 18:46:31 · 14755 阅读 · 0 评论 -
十六进制转十进制 python
写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 )python3实现while True: try: print(int(input(),16)) except: breakpython2实现while True: try: print(int(raw_input...原创 2019-07-09 22:10:14 · 2766 阅读 · 1 评论 -
组成数字1到2,000,000的所有数字的各位的总和是
组成数字1到2,000,000的所有数字的各位的总和是?先考虑000,000~999,999共1,000,000个数,每个数字有6位,共6,000,000位数字,数字0到9出现次数相当,都出现了6,000,000/10=600,000次。因此000,000~999,999所有数字之和为(0+1+2+...+9)*600,000=45*600,000=27,000,0001,00...原创 2019-07-10 10:10:24 · 1529 阅读 · 0 评论 -
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。关于本题,前提是n个台阶会有一次n阶的跳法。分析如下:f(1) = 1f(2) = f(2-1) + f(2-2) //f(2-2) 表示2阶一次跳2阶的次数。f(3) = f(3-1) + f(3-2) + f(3-3)...f(n) = f(n...原创 2019-07-15 17:00:20 · 827 阅读 · 0 评论 -
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。C++代码class Solution {public: int jumpFloor(int n) { if(n<=2) return n; else return jumpF...原创 2019-07-15 17:06:19 · 516 阅读 · 0 评论 -
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?使用递归的方法:因为形状是2*n的结果,输入是2*1的形状f(1)=1f(2)=2f(3)=f(2)+f(1)f(4)=f(3)+f(2)...f(n)=f(n-1)+f(n-2)得出结论是:斐波那契数列下面是C++代码...原创 2019-07-15 20:31:30 · 366 阅读 · 0 评论 -
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。这个体非常的经典中的经典:python实现:# -*- coding:utf-8 -*-class Solution: def NumberOf1(self, n): # write code here count = 0 if n<0: ...原创 2019-07-15 22:43:56 · 269 阅读 · 0 评论 -
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方python代码很简单就一句话:意义不大# -*- coding:utf-8 -*-class Solution: def Power(self, base, exponent): # write code here return base...原创 2019-07-15 23:09:59 · 284 阅读 · 0 评论 -
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路从左下角元素往上查找,右边元素是比这个元素大,上边是的元素比这个元素小。于是,target比这个元素小就往上找,比这个元素大就往右找。如果出了边界,则说明二维数组中不存在target元素。py...原创 2019-07-12 10:49:32 · 236 阅读 · 0 评论 -
python 字符串替换
python中字符串替换str = str.replace(old, new)# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): # write code here s = s.replace(" ", "%20") retu...原创 2019-07-12 11:06:46 · 449 阅读 · 0 评论 -
1000!结果中零的个数,尾部零的个数,例如:8! 末尾出现零的个数为1,总的出现零的个数为2
这里考察一个知识点 :整数中表示无穷大的整数,那么这个整数怎么表示呢!在JAVA中表示无穷大的整数使用BigInteger 来表示JAVA 语言codeimport java.math.BigInteger;public class NumberOfTailZreo { public static void main(String[] args){ Big...原创 2019-08-03 17:01:21 · 311 阅读 · 0 评论 -
排序算法分类 排序算法时间复杂度、空间复杂度、稳定性
排序算法比较表格1 归并排序可以通过手摇算法将空间复杂度降到O(1),但是时间复杂度会提高。2 基数排序时间复杂度为O(N*M),其中N为数据个数,M为数据位数。辅助记忆 时间复杂度记忆- 冒泡、选择、直接 排序需要两个for循环,每次只关注一个元素,平均时间复杂度为O(n2)(一遍找元素O(n),一遍找位置O(n))快速、归并、希尔、堆基于二分思想,log...原创 2019-07-09 15:53:16 · 557 阅读 · 0 评论