自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java

1.Java 中一个类可以包含以下类型变量:局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。 成员变量(非静态变量):成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。 类变量(静态变量):类变量也声明在类中,方法体之外,但必须声明为 static 类型。2.Java 源程序与编译型运行区别3.Java语言提供了八种基本类型。六种数字.

2020-08-02 09:43:41 223 1

原创 面试常问问题

1.有一个一百万行的文件,内部是购买的商品ID,如何获取到购买最多的前一百个商品。•思路:首先考察的肯定是大数据处理方案,这些数据肯定不能一次性读取到内存,那就需要拆分,将数据分隔处理。假设要分隔为 n 个文件。•分隔:如果 ID 是整型的话,可以直接采用取模(id % n)的方式;如果 ID 是字符串可以先计算 hash 值然后再取模(hash(x) % n)的方式,将相同 ID 的商品...

2020-03-21 12:25:20 253

翻译 链表找环的入口

参考链接:https://blog.csdn.net/liushall/article/details/80444753思想:先找是否有环:一快指针,一慢指针,相等即有环找入口:1.可在快慢指针重合的地方开始继续走慢指针,再次重合即环的长度n;一指针先走n步,另加一指针一起走,相等地方即入口2.一指针指向头指针,一指针在重合的地方,一起单步走,相等地方即入口解释:...

2020-03-14 23:19:10 233

原创 mysql

(1)MySQL中MyISAM与InnoDB的区别,至少5点:InnoDB支持事务,而MyISAM不支持事务。 InnoDB支持行级锁,而MyISAM支持表级锁 InnoDB支持MVCC,而MyISAM不支持 InnoDB支持外键,而MyISAM不支持 InnoDB不支持全文索引,而MyISAM支持(2)InnoDB引擎的3大特性插入缓存(insert ...

2020-03-05 12:43:30 174

转载 线程不安全

参考:https://www.cnblogs.com/dhcao/p/10982278.html​ 多线程为什么不安全?现在应该有答案了!究其根本,是因为线程之间无法准确的知道互相之间的状态。那么如何使得多线程安全呢,从内存角度来讲,保证线程的工作内存之间的可见性和有序性,是多线程并发安全的基础。例如volatile关键字和synchronized关键字,我们除了从作用上了解他们,还可以从...

2020-03-03 21:46:32 138

转载 select、poll、epoll之间的区别

参考:https://www.cnblogs.com/aspirant/p/9166944.htmlselect:select本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺点是:1、 单个进程可监视的fd数量被限制,即能监听端口的大小有限。 一般来说这个数目和系统内存关系很大,具体数目可以cat /proc/sys/fs/file-...

2020-03-03 20:46:16 210

转载 java和c++的区别

https://www.sohu.com/a/233598512_100180425java没有指针 java不支持多重继承 java是完全面向对象语言,只有对象方法,没有函数 java自动进行无用内存回收(c++的new,delete):当 Java 中一个对象不再被用到时,无须使用内存回收器,只需要给它添加删除标签,无用内存的回收器便利用空闲时间在后台运行 java不支持操作符重载...

2020-03-02 17:29:55 100

转载 HTTPS用的对称加密和非对称加密

参考:https://www.cnblogs.com/imstudy/p/12015889.htmlHTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。为什么数据传输是用对称加密?1.非对称加密的加解密效率是非常低的,而 http 的应用场景中通常端与端之间存在大量的交互,非对称加密的效率是无法接受的。2.在 HTTPS 的场景中只有服务端保存了私钥,一...

2020-03-01 23:31:14 563

原创 redis

目录一、关系型数据库二、非关系型数据库三、非关系型数据库——redis3.1 redis快的原因3.2redis是存储在内存中的,是怎么进行持久化的?3.3 Redis的过期策略一、关系型数据库关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织优点:1、易于维护:都是使用表结构,格式一致;2、使用方便:SQL语言通用,可用...

2020-03-01 16:23:16 137

转载 网络编程

Python 提供了两个级别访问的网络服务。:低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法。 高级别的网络服务模块 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机...

2020-02-28 20:34:32 98

原创 测试基础

持续集成continuous integration(CI):频繁的(一天多次的)将所有开发者的工作合并到主干上,核心在于确保新增的代码能够与原先代码正确的集成持续交付Continuous delivery(CDorCDE):一种能够使得软件在较短的循环中可靠的发布的软件工程方法。侧重点在于交付,确保新增的代码在生产环境中是可用的持续部署Continuous deplo...

2020-02-24 11:26:21 126

原创 c++ 基础

1.面向对象3大特性:封装、继承、多态什么是多态顾名思义就是同一个事物在不同场景下的多种形态。静态多态我们以前说过的函数重载就是一个简单的静态多态,静态多态是编译器在编译期间完成的,编译器会根据实参类型来选择调用合适的函数,如果有合适的函数可以调用就调,没有的话就会发出警告或者报错。动态多态动态多态:它是在程序运行时根据基类的引用(指针)指向的对象来确定自己具体该调用哪...

2020-02-23 20:32:13 496

转载 有一栋楼共100层,一个鸡蛋从第N层及以上的楼层落下来会摔破, 在第N层以下的楼层落下不会摔破。给你2个鸡蛋,设计方案找出N,并且保证在最坏情况下, 最小化鸡蛋下落的次数。

https://blog.csdn.net/heyuchang666/article/details/50040943"最坏情况下代价最小"这句话十分重要, 它反映了题目的重要数学结构:我们可以把任何一种策略都看成一个决策树,每一次扔瓶子都会有两个子节点, 对应碎与不碎的情况下下一步应该扔的楼层.那么, 策略的一次执行, 是树中的一条从根往下走的路,当且仅当这条路上出现过形如 k 没碎...

2020-02-23 17:01:15 1146

转载 bloomfilter 布鲁过滤

转载链接:https://github.com/Snailclimb/JavaGuide/blob/master/docs/dataStructures-algorithms/data-structure/bloom-filter.md下面我们将分为几个方面来介绍布隆过滤器:什么是布隆过滤器? 布隆过滤器的原理介绍。 布隆过滤器使用场景。 通过 Java 编程手动实现布隆过滤器。 ...

2020-02-13 13:50:29 340

原创 shell 基础

一、Shell 数组bash支持一维数组(不支持多维数组),并且没有限定数组的大小。我下面给了大家一个关于数组操作的 Shell 代码示例,通过该示例大家可以知道如何创建数组、获取数组长度、获取/删除特定位置的数组元素、删除整个数组以及遍历数组。#!/bin/basharray=(1 2 3 4 5);# 获取数组长度length=${#array[@]}# 或者length2...

2020-02-12 19:25:09 86

转载 多线程queue

一、class queue.Queue(maxsize=0) #队列:先进先出import queueq=queue.Queue()q.put('first')q.put('second')q.put('third')print(q.get())print(q.get())print(q.get())'''结果(先进先出):firstsecondthird...

2020-02-11 21:52:01 137

原创 多进程,多线程

1.多线程import threadingdef fun1(): print "current thread name is: %s" % threading.current_thread()def main(): thread = threading.Thread(target=fun1) thread.start() print "active t...

2020-02-11 21:51:27 229

原创 python基础学习

1.zip, map, lambdazip:纵向连接listlambda匿名函数,定义简单函数map:连接函数和参数>>> a=[1,2,3]>>> b=[4,5,6]>>> zip(a,b)[(1, 4), (2, 5), (3, 6)]>>> def fun1(x,y):... ret...

2020-02-11 21:51:18 273

原创 git操作详解

一、git的工作区&版本库&远程库的关系1.1 工作区(Working Directory):就是你在电脑里能看到的目录,比如我的fork-common-autotest文件夹就是一个工作区:1.2 版本库(Repository):工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。Git的版本库里存了很多东西,其中最重要的就是称...

2020-02-02 20:49:16 862

原创 mysql 中文乱码编码设置

1.显示当前mysql编码:mysql> show variables like 'character%'; 2.最简单的设置为uft8命令:SET NAMES 'utf8';它相当于下面的三句指令:SET character_set_client = utf8;SET character_set_results = utf8;SET character_set_conn...

2019-01-03 15:17:00 1192

原创 c++ 面试 get

1.构造函数、析构函数和虚函数的调用顺序class Base{ virtual void method() { cout<<"from Base"<<endl; }public: Base() { cout<<"Base struct"<<endl; } vi...

2018-05-04 21:52:54 238

原创 恢复误删的git branch

恢复三步曲: 前提:1.你误删的那个分支(假设名字是old),你有commit第一步:在任意分支下(反正不是old,你都已经删了),使用git log -g 找回之前old提交的commit(假设是980ab50bccde1c1d315a162f5a0f2b6c0038e3f4)第二步:使用git branch new(新分支名字)980ab50bccde1c1d315a162f5a0f2b6c0

2018-01-18 12:02:17 446

原创 c++ assign

C++ string assign()赋值常用方法这个函数给我的感觉像python 的 字符串截取[:],很方便了python:a="yes,i need you~"b=a[4:]print b    # (i need you~)函数assign()常用在给string类变量赋值.常用方法有:1,直接用另一个字符串赋值.如str2.assign(str1);即用str1给str2赋值.2,用另一...

2017-12-29 11:36:40 500

原创 Python的可变类型与不可变类型

Python的每个对象都分为可变和不可变,主要的核心类型中,数字、字符串、元组是不可变的,列表、字典是可变的。 对不可变类型的变量重新赋值,实际上是重新创建一个不可变类型的对象,并将原来的变量重新指向新创建的对象(如果没有其他变量引用原有对象的话(即引用计数为0),原有对象就会被回收)。不可变类型:以int为例, i += 1 并不是真的在原有的int对象上+1,而

2017-12-07 10:25:24 337

转载 MySQL中MAX函数与Group By一起使用的注意事项

mysql> select * from test;  +----+-------+------+-------+  | id | name  | age  | class |  +----+-------+------+-------+  |  1 | qiu   |   22 |     1 |   |  2 | liu   |   42 |     1 |   |  

2017-12-06 11:07:47 565

原创 限制费用的最短路 例题:poj 1724

原题  poj  1724:http://poj.org/problem?id=1724题意:给你钱数 k,有n个城市(编号1~n),r 条路然后花费要在k以内,从1到达n城市的最短路。解法:方法很多:可以用优先队列+bfs(/dijkstra),也可以用spfa+dfs(/dp),也可以用vector 存储一下边的关系。代码1:优先队列+bfs

2017-04-17 16:36:19 847

原创 并查集 例题:HDU 1829

A Bug's LifeTime Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 15115    Accepted Submission(s): 4917Problem DescriptionBackground

2017-04-17 16:07:47 333

原创 "尚学堂杯"哈尔滨理工大学第七届程序设计竞赛 F.Final Ugly English(字符串处理)

F.Final Ugly EnglishTime Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 2074 (405 users)Total Accepted: 294 (291 users)Special Judge: NoDescript

2017-04-02 16:19:43 692

转载 优先队列详解

优先队列:顾名思义,首先它是一个队列,但是它强调了“优先”二字,所以,已经不能算是一般意义上的队列了,它的“优先”意指取队首元素时,有一定的选择性,即根据元素的属性选择某一项值最优的出队~百度百科上这样描述的:  优先级队列 是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素  优先队列的类定义    优先队列是0个或多个元素的集合,每个元素都有一个优先权或值,对优

2017-03-17 20:07:20 456

转载 Linux下的重命名--主:rename在不同linux系统中的不同使用

mv很简单,move文件移动mv /dir/file1  /dir2/file1两个参数,第一个是源文件,第二个是目的地,如果第二个参数文件名不一样,则会重命名。当两个参数不带目录,只有文件名时,那就是重命名了。这是单个文件的重命名。rename  arg1  arg2  arg3rename才是真正的批量重命名命令。而且他是3个参数,不是2个。ar

2017-02-25 20:56:09 4705

转载 God Save the i-th Queen

I. God Save the i-th QueenTime Limit: 5000msMemory Limit: 65536KB64-bit integer IO format: %lld      Java class name: MainSubmit Status PID: 4299Did you know that during th

2015-04-14 10:02:30 363

空空如也

空空如也

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

TA关注的人

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