十进制

java基本数据类型的包装类

偶尔善良 提交于 2019-12-01 07:47:09
1:基本类型的包装类概述 Java为基本数据类型提供了对应的类,这些类称作包装类。 如下表所示:    2:为什么要使用包装类? 包装类中封装了一些很实用的方法和常量。 例如:Byte.MIN_VALUE是Byte类中的一个常量,存放了byte类型数据的最小值 包装类在集合中用来定义集合元素的类型。 3:包装类的常用方法和常量 Integer.MIN_VALUE: int类型的最小值 Integer.MAX_VALUE: int类型的最大值 int Integer.parseInt(String value):将字符串类型的整数转换成int类型的数据。 String Integer.toBinaryString(int value):将十进制数转换为二进制,返回结果String类型。 String Integer.toHexString(int value):将十进制数转换为十六进制,返回结果String类型。 Long.MIN_VALUE: long类型的最小值 Long.MAX_VALUE: long类型的最大值 long Long.parseLong(String value): 将字符串类型的整数转换为long类型的数据。 String Long.toBinaryString(long value): 将十进制数转换为对应的二进制数,该方法返回的结果是String类型。

十进制快速幂算法

自古美人都是妖i 提交于 2019-12-01 05:23:43
原文章 是我在csdn上写的 题目链接 介绍一下十进制快速幂 由于这道题的指数还在 \(long long\) 的范围内,比较小,快速幂可以用二进制的来实现。 但是我们考虑到在指数非常大时该怎么办,例如 \(k\) = \(10\) ^100000^。如果你想写高精那么我不会阻挡你,只要你不嫌麻烦。 那么现在进入正题,如果你了解了快速幂的本质,那么十进制快速幂不是什么问题,如果不了解,请先去仔细阅读别的题解。 十进制快速幂和二进制没有什么本质的区别,一个是十进制拆分指数,另一个是二进制拆分指数。 例如 \(3\) ^405^可以拆分为 ( \(3\) ^1^)^5^ * ( \(3\) ^10^ )^0^ * ( \(3\) ^100^)^4^. 那么代码就可以很轻松地写出来了 #include<iostream> #include<cstdio> #include<cstring> using namespace std; #define ri register int #define ll long long ll b,t,h,P; char c[ 100007 ]; ll TenthPow( ll a ){ ll ans = 1,s = a; while( t >= 0 ){ ll cnt = c[ t ] - '0',cur = s; for( ri i = 1 ; i <

Python学习记录

喜夏-厌秋 提交于 2019-11-30 19:09:09
文章目录 Python 学习记录 第一篇 Python 基础 第一章:开篇综述 0.Python课程介绍 1.1 Python语言历史 1.2 Python语言设计哲学 1.3 Pyhton语言特点 1.4 Python语言应用前景 1.5 如何获得帮助 第二章:开发环境搭建 2.1 搭建Python环境 2.2 Pycharm开发工具 2.3 EclipsePyDev开发工具 2.4 Visual Studio Code开发工具 2.5 文本编辑工具 第三章:第一个Python程序 3.1 使用Python Shell 3.2 使用PyCharm实现 3.3 使用EclipsePyDev插件实现 3.4 使用Visual Studio Code实现 3.5 文本编辑工具Python解释器实现 3.6 代码解释 第四章:Python语法基础 4.1 标识符和关键字 4.2 变量和常量 4.3 注释 4.4 语句 4.5 模块 4.6 包 第五章:Python编码规范 5.1 命名规范 5.2 注释规范 5.3 导入规范 5.4 代码排版 第六章:数据类型 6.1 数字类型 6.2 数字类型相互转换 6.3 字符串类型 6.3.1 Phthon 中字符串表示方式三种: 6.3.2 字符串格式化 6.3.3 字符串查找 6.3.4字符串与数字相互转换 Python 学习记录

学习Java基本数据类型与转换++,--等问题总结

帅比萌擦擦* 提交于 2019-11-30 10:02:08
java中的数据类型 java有4种类型分别是整数类型、浮点类型、字符型、布尔型。java的八中分类分别是byte、short、int、long、float、double、char、boolean简称4类8种。 那Java中字符串string属于什么数据类型? Java中的字符串String属于引用数据类型。因为String是一个类。 常量介绍 什么是常量: 在代码执行过程中其值不发生改变的量。 Java中常量的分类 1.字面值常量 2.自定义常量 字面量常量的分类 1.字符串常量 2.整数常量 3.小数常量 4.字符常量 5.布尔常量 6.空常量 变量 变量的介绍: 在程序执行的过程中,在某个范围内其值可以发生改变的量. 使用变量注意事项: 1.作用域问题 变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。相同的作用域中不能定义两个同名变量。 2.初始化值问题 没有初始化值不能直接使用。 3.一行上建议只定义一个变量 可以定义多个,但是不建议。 不同进制数据的表现形式 注意: java中如果数值不指明进制类型,java默认都会当成是十进制 解决方法: 0b10 在十前面加上0b表示该数是二进制数不加的化就是十进制数10,返回结果为十进制数2 010 同理在十进制前面加上0表示该数是八进制,输出结果为十进制数8 0x10 同理在十进制前面加上10表示该数是八进制

Bit-map算法实现

无人久伴 提交于 2019-11-30 06:09:09
Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。 1. Bit-map应用 1)可进行数据的快速查找,判重,删除,一般来说数据范围是int的10倍以下。 2)去重数据而达到压缩数据 2. Bit-map算法评价 优点: 1. 运算效率高,不进行比较和移位; 2. 占用内存少,比如最大的数MAX=10000000;只需占用内存为MAX/8=1250000Byte=1.25M。 缺点: 1. 所有的数据不能重复,即不可对重复的数据进行排序。(少量重复数据查找还是可以的,用2-bitmap)。 2. 当数据类似(1,1000,10万)只有3个数据的时候,用bitmap时间复杂度和空间复杂度相当大,只有当数据比较密集时才有优势。 3. Bit-map算法示例 3.1 只需要1个8bit空间的例子 假设要对0-7内的5个元素(4,7,2,5,3)排序(这里假设这些元素没有重复)。那么就可以采用Bit-map的方法来达到排序的目的。 用8个Bit(1Bytes)来表示0-7内的8个数,并将这些空间的所有Bit位都置为0(如下图): 然后遍历这5个元素,首先第一个元素是4,那么就把4对应的位置为1(可以这样操作 p+(i/8)|(0×01<<(i%8)) 当然了这里的操作涉及到Big

3串法

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-30 05:40:48
易错题 """ 7.使用for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!" """ # s = "321" # for i in s: # print("倒计时%s秒"%i) # print("出发") # 字符串格式化 """ 9.选做题:实现一个整数加法计算器(多个数相加): 如:content = input("请输入内容:") 用户输入:5+9+6 +12+ 13,然后进行分割再进行计算。 """ # content = input("请输入内容:") # ret_list = content.split("+") # num = 0 # for i in ret_list: # num += int(i) # print(num) # content = input("请输入内容:") # ret_list = content.split("+") # num = 0 # for i in ret_list: # new_i = i.replace(" ","") # num += int(new_i) # print(num) """ 10.计算用户输入的内容中有几个整数(以个位数为单位)。 如:content = input("请输入内容:") # 如fhdal234slfh98769fjdla """ #

位运算基础知识

走远了吗. 提交于 2019-11-30 03:01:45
一、二进制与十进制的相互转化: 1.十进制转二进制: (1)十进制整数转二进制数:“除以2取余,逆序排列,直到商为0”(除2取余法) (2)十进制小数转二进制数:“乘以2取整,顺序排列,直到积中的小数部分为0,或者达到所要求的精度为止”(乘2取整法) 2、二进制转十进制: 个位上的数字的次数是0,十位上的数字的次数是1,......,依次递增,而十 分位的数字的次数是-1,百分位上数字的次数是-2,......,依次递减。 二、java中的运算符 Java的运算符,分为四类: 算数运算符 、 关系运算符 、 逻辑运算符 、位运算符。 算数运算符(9):+ - * / % ++ -- 关系运算符(6):== != > >= < <= 逻辑运算符(6):&& || ! ^ & | 逻辑与'&&' , 逻辑或'||' , 逻辑非'!' , 逻辑异或'^' , 逻辑与'&' , 逻辑或'|' 位运算符(7):& | ~ ^ >> << >>> 位与'&' , 位或'|' , 位非'~' , 位异或'^' , 右移'>>' , 左移'<<' , 0填充的右移'>>>' 位运算: 右移是将一个二进制数按指定移动的位数向右移位,移掉的被丢弃,左边移进的部分或者补0(当该数为正时) 或者补1(当该数为负时)。这是因为整数在机器内部采用补码表示法,正数的符号位为0,负数的符号位为1。 将一个数左移"

qDebug的用法

放肆的年华 提交于 2019-11-30 02:34:52
qDebug用于在控制台输出调试信息,主要有以下几种用法。 1、类似c++的cout函数 QString str="world"; qDebug()<<"hello "<<str<<"!"<<endl; 注:此处endl起到的作用有两个: a、等同于\n换行 b、刷新缓冲区,将缓冲区数据写入文件或屏幕,因此会影响程序效率。 endl等价于"/n"+flush(); 2、构造函数直接引入参数 -字符串拼接 例2.1:QString str="world!"; qDebug("hello "+str); -类似mfc中CString的format函数 int year=18; qDebug("今年我%d",year); 注: %a,%A 读入一个浮点值(仅C99有效)    %c 读入一个字符    %d 读入十进制整数    %i 读入十进制,八进制,十六进制整数    %o 读入八进制整数    %x,%X 读入十六进制整数    %s 读入一个字符串,遇空格、制表符或换行符结束。    %f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。    %p 读入一个指针    %u 读入一个无符号十进制整数    %n 至此已读入值的等价字符数    %[] 扫描字符集合    %% 读%符号 ———————————————— 版权声明:本文为CSDN博主「

动手动脑问题分析

你。 提交于 2019-11-30 01:20:06
一、 仔细阅读示例 : EnumTest.java ,运行它,分析运行结果? ( 代码如下 ) package test ; public class EnumTest { public static void main(String[] args) { Size s=Size. SMALL ; Size t=Size. LARGE ; //s 和 t 引用同一个对象? System. out .println(s==t); // // 是原始数据类型吗? System. out .println(s.getClass().isPrimitive()); // 从字符串中转换 Size u=Size. valueOf ("SMALL"); System. out .println(s==u); //true // 列出它的所有值 for (Size value:Size. values ()){ System. out .println(value); } } } enum Size{ SMALL , MEDIUM , LARGE }; 运行结果如下: false false true SMALL MEDIUM LARGE 分析: 1 、对象 s,t 都是将字符串转化为枚举但是因为字符串不同所以 s 和 t 不相等输出 false 。 2、getClass (