技术类
Allen-Liu
君子终日乾乾,夕惕若,厉无咎。——自勉。
展开
-
封装、继承和多态
面向对象的三个基本特征是:封装、继承、多态。下面就是看到的一篇不错的文章,现在分享给大家:http://www.cnblogs.com/forwardpower/archive/2010/05/01/1725787.html转载 2017-04-08 16:13:16 · 548 阅读 · 0 评论 -
Python中的集合类型及其操作
本文介绍python中的集合类型以及其相关操作。集合是一个无序的(字典也是无序的),不重复的数据集合。其基本功能包括下面两种:1. 去重:把一个还有重复元素的列表或元组等数据类型转变成集合,其中的重复元素只出现一次。使用set()方法。2. 进行关系测试:测试两组数据之间的交集,差集,并集等数据关系。首先是一个python的set和其他语言类似, 是一个无序不重复元素集原创 2017-07-27 10:34:14 · 10927 阅读 · 1 评论 -
用WinSCP将windows上的内容传递到linux主机上
有时候需要将windows上的内容传递到linux系统上,这时候可以选择winscp这个软件实现。winscp:是一个windows环境下使用SSH的开源图形化的SFTP客户端,同时支持SCP协议。主要功能是在本地与远程计算机间安全的复制文件。1.在windows系统上下载并安装winscp软件(安装过程与安装普通软件相同,可以在浏览器中直接搜索“winscp”,下载程序并且安装)。2原创 2017-03-26 15:29:10 · 1606 阅读 · 0 评论 -
容器(Docker)技术
本文详细介绍了Docker技术,简单易懂。好东西值得传播,原文地址:http://www.infoq.com/cn/articles/docker-core-technology-preview【编者按】Docker是PaaS供应商dotCloud开源的一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上, 基于Go语言开发并遵从Apache 2.0协议开源。Docker提供了一转载 2017-08-21 23:20:25 · 552 阅读 · 0 评论 -
快速排序(java机试题)
题目要求:输入一组数,以空格隔开。要求用快排按照从小到大的顺序排列并输出。java实现如下:import java.util.Scanner;public class QuickSort{ /** * 快速排序 */ public static void main(String[] args) { Scanner str = new Scanner(System.in原创 2017-10-07 16:14:12 · 606 阅读 · 0 评论 -
归并排序(java机试题)
题目要求;输入一个数组,以空格间隔。要求用归并排序从小到大排序并输出。java实现如下:import java.util.Scanner;public class MergeSort{ /** * 归并排序 */ public static void main(String[] args) { Scanner str = new Scanner(System.in);原创 2017-10-07 15:04:35 · 485 阅读 · 0 评论 -
选择排序(java机试题)
要求:输入一个数组,然后用选择排序从小到大排序并输出。java实现如下:import java.util.Scanner;public class SelectSort{ /** * 选择排序 */ public static void main(String[] args) { Scanner str = new Scanner(System.in); Stri原创 2017-10-07 15:01:19 · 508 阅读 · 0 评论 -
插入排序(java机试题)
import java.util.Scanner;public class BubbleSort{ /** * 插入排序 */ public static void main(String[] args) { Scanner str = new Scanner(System.in); String[] strlist = str.nextLine().split(" ")原创 2017-10-07 14:55:51 · 435 阅读 · 0 评论 -
冒泡排序(机试题)
题目要求:输入一个数组,不同的数之间用一个空格隔开。输出为排好序的数组。要求使用冒泡排序import java.util.Scanner;public class BubbleSort{ /** * 冒泡排序 */ public static void main(String[] args) { Scanner str = new Scanner(System.in);原创 2017-10-07 11:22:51 · 827 阅读 · 0 评论 -
爬台阶问题(递归和动态规划实现)
问题描述: 一个人爬楼梯,每次只能爬1个或2个台阶,假设有n个台阶,那么这个人有多少种不同的爬楼梯方法? 这个问题可以分解成两个子问题(当n>=2时),最后一步是爬1个台阶还是爬两个台阶(两种情况),当爬1个台阶的时候:问题就分解成,最后爬一个台阶,前面n-1个台阶有 多少种爬法?当最后爬2个台阶的时候,前面n-2个台阶有多少种爬法?然后两个子问题方法相加就是会后结果。两个子问题又可以再分割成原创 2017-10-06 10:55:36 · 2458 阅读 · 0 评论 -
java中的file类
目标 1)掌握File类作用 2)可以使用file类中方法对文件进行读写操作。File类 唯一与文件有关的类。使用file类可进行创建或删除操作,要想使用File类,首先观察File类的构造方法。 public File(String pathname);实例化File类的时候,必须设置好路径。 常量::public sta转载 2017-10-05 10:35:15 · 554 阅读 · 0 评论 -
静态路由和动态路由的比较
现将静态路由和动态路由进行如下比较:定义:静态路由:静态路由是在路由器中设置固定的路由表;除非网络管理员进行干预,否则静态路由表不会发生变化。动态路由:由网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由表的路由方式。优点:静态路由:简单、高效、可靠、网络安全、转发效率高。动态路由:灵活,能够适时适应网络结构的变化,无需管理员手工维护,减轻了管理员的工作负原创 2017-09-27 10:40:09 · 16047 阅读 · 0 评论 -
华为机试题-约瑟夫问题
记得做个一个类似的问题,就是大家围城一个圈,然后依次数数,数到特定数的退出,问最后留下谁。今天发现这原来是个很经典的问题:约瑟夫 环约瑟夫环问题描述如下:历史学家约瑟夫和友人以及其他39人多在山洞中躲避战乱,除约瑟夫和友人外其他人表示要集体自杀来表明自己绝不投降的志气。做法是41个人围城一个圈,然后顺时针报数,1,2,3.报数为3的人立刻自然,然后下一个人从1重新开始报数。约瑟夫和友人不想原创 2017-09-18 19:46:24 · 1023 阅读 · 0 评论 -
Mysql数据库表连接
转自:http://blog.sina.com.cn/s/blog_634c33eb01010tuw.html第一部分、查询理论连接查询方式有:内连接、外连接(左连接、右连接、全连接)、交叉连接左连接和右连接的区别:左连接以左表为基准进行查询,左表数据会全部显示出来,右表如果和左表匹配的数据则显示相应字段的数据,如果不匹配,则显示为NULL;右连接刚好相反。转载 2017-09-17 21:57:40 · 792 阅读 · 0 评论 -
华为编程题-加密解密
问题描述:__time__ = "2017/9/15"'''This program used to '''#print('a' + 1)def jiami(in1): out1 = [] for i in in1: out1.append(i) for i in range(len(out1)): if (out1[i].原创 2017-09-15 16:54:32 · 820 阅读 · 0 评论 -
华为机试题-删除出现次数最少的字符
分享一道华为的机试题:import java.util.HashMap;//引入类 import java.util.Scanner; import java.util.Set;public class Shanzifu{ public static void main(String[] srgs) { Scanner sc = new Scanner(Syst原创 2017-09-15 14:21:41 · 645 阅读 · 0 评论 -
换汽水(华为编程题)
看到华为有一道换汽水的编程题,分享如下:题目:某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶原创 2017-09-13 20:52:45 · 1615 阅读 · 0 评论 -
java中的可变数组
本文转自:https://www.w3cschool.cn/java/java-variable-length-arrays.htmlJava 可变长度数组由 lala100 创建,最后一次修改 2017-01-09Java数据类型教程 - Java可变长度数组Java数组不能增长。为了创建一个可扩展的数组,我们可以使用ArrayList或V转载 2017-09-13 10:21:24 · 26293 阅读 · 0 评论 -
中兴笔试选择题
今天参加了中兴的笔试,总结下遇到的选择题部分:1. 码元速率的单位是?码元传输速率(Symbol transmission rate)简称传码率,又称符号速率等。它表示单位时间内传输码元的数目,单位是波特 ( Baud ),记为B。这里的干扰项是B/s。2. T1标准的数据传输速率是?PCM有两个标准(表现形式)即E1和T1。 中国采用的是欧洲的E1标准。T1的速率是1.544原创 2017-09-08 16:08:25 · 2046 阅读 · 0 评论 -
判断是否为回文字符
要求:用户输入一串字符,程序判断这个字符串是否为回文,并输出判断结果。java实现:package test1;import java.util.Scanner;public class IsPalindrome { public static void main(String[] args) { boolean indicator = true;//设置一个标志 S原创 2017-09-07 23:41:06 · 632 阅读 · 0 评论 -
将输入数组逆序输出
本文用java实现将输入的数组逆序输出。要求:输入为一个数组,以空格隔开(两个元素间可有多个空格),然后将输入的数字逆序输出,不同元素间以一个空格隔开。java代码实现如下:package test1;import java.util.Scanner;public class ReverseArray { public static void main(String[] arg原创 2017-09-07 22:52:40 · 4358 阅读 · 0 评论 -
截取字符串以多行的形式输出
问题描述:输入一个字符串(包括汉字和英文字母以及其他符号)以及每行的字节数。输出为一个字符串被分割为多行输出。举例:Please input string:dasa大大dadPlease input string number per line:4Print the string as 4 byte per line:dasa大大dad这里需要注意的是:原创 2017-09-07 21:50:43 · 1280 阅读 · 0 评论 -
格式化输出n天后的时间(java实现 )
要求:写一段代码输出当前时间以及任意n天后的时间。package test1;import java.util.Date;import java.text.SimpleDateFormat;public class Nextday { public static void main(String[] args) { //定义字符串的格式 SimpleDateFormat原创 2017-09-07 20:49:24 · 682 阅读 · 0 评论 -
java打印乘法口诀
一直以为打印乘法口诀要用两个for循环,今天发现用一个for循环就能达到同样的效果,java代码如下://打印乘法口诀public class multiTable { //主函数 public static void main(String[] args) { // 一个for循环,两个参数实现了循环的嵌套效果 for (int i = 1, j = 1; j <= 9;原创 2017-09-07 20:01:55 · 550 阅读 · 0 评论 -
java实现多线程的方法
Java虚拟机允许应用程序并发的运行多个线程,在java中实现多线程的方法由以下三种:1. 实现Runnable接口,并且实现该接口的run()方法。主要步骤如下1.1 自定义类并且实现Runnable接口,实现run()方法。1.2 创建Thread对象,用实现Runnable接口的对象作为参数实例化该Thread对象。1.3 调用Thread的start()方法。举例说明原创 2017-09-06 22:53:10 · 229 阅读 · 0 评论 -
Python中内置的字典函数
以下为python3中内置的字典函数:len(dict) :计算字典元素个数,即键的总数。str(dict) :输出字典可打印的字符串表示。type(variable) :返回输入的变量类型,如果变量是字典就返回字典类型。dict.clear() :删除字典内所有元素。dict.copy(): 返回一个字典的浅复制。dict.fromkeys() :创建一个新字典,以序列s原创 2017-08-27 17:37:48 · 510 阅读 · 0 评论 -
字符串常用内置方法-python3
我们常常要对字符串进行处理,那么看看python3中都有哪些内置方法呢?String.capitalize():将字符串的第一个字母大写String.count():获得字符串中某一字符串的数目String.find():获得字符串中某一字符串的起始位置String.isalnum():检测字符串是否仅包含0-9原创 2017-08-27 16:28:58 · 493 阅读 · 0 评论 -
正则表达式详解
最近想总结一下正则表达式的内容,看到了这篇不错的文章,特与大家一起分享。原文地址:http://www.cnblogs.com/China3S/archive/2013/11/30/3451971.html一 前言 对于正则表达式,相信很多人都知道,但是很多人的第一感觉就是难学,因为看第一眼时,觉得完全没有规律可寻,而且全是一堆各种各样的特殊符号,完全不知所云。其转载 2017-08-26 14:38:58 · 685 阅读 · 0 评论 -
Mysql常用命令
本文介绍Mysql的的常用操作及其命令:涉及用户创建、建库、建表、以及表的增、删、改、查等,以及查看表的相关信息等等。1. 启动Mysql服务原创 2017-08-25 19:57:55 · 274 阅读 · 0 评论 -
VLAN的划分方式及其优缺点
本文介绍了什么是VLAN、为什么要划分VLAN、以及各种划分方式和对应的优缺点。什么是VLAN:VLAN(Virtual Local Area Network)的中文名为"虚拟局域网"。虚拟局域网(VLAN)是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。VLAN工作原创 2017-08-22 21:33:27 · 54346 阅读 · 0 评论 -
容器Docker和Kubernetes
Docker和Kubernetes的关系就如Xen与OpenStack。Docker是一种容器技术,和Hypervisor(KVM/Xen这类)不同的是,Docker不会提供一整个操作系统,他能提供隔离的程序运行环境。对一个应用来说这已经够了。Kubernetes是Google的一个开源容器管理项目,他能利用Docker/其他技术部署/管理容器集群。转载 2017-08-22 15:43:31 · 10336 阅读 · 2 评论 -
python和ruby的垃圾回收机制
很高兴能够看到这样详细生动的文章,特来分享给大家。为了表示对原文的尊重,本文修改了个别书写和表述错误。画说 Ruby 与 Python 垃圾回收英文原文: visualizing garbage collection in ruby and python中文:画说 Ruby 与 Python 垃圾回收本文基于我在刚刚过去的在布达佩斯举行的RuPy上的演讲。我觉得趁热转载 2017-08-21 16:22:26 · 718 阅读 · 0 评论 -
二分查找及python实现
首先介绍二分查找,然后介绍其python实现(代码返回查找的次数,这也是很多笔试题会问到的)。二分法:也称二分搜索(binary search)、折半搜索(half-interval search)、对数搜索(logarithmic search),是一种在有序数组中查找某一特定元素的搜索算法。二分查找的实现步骤:1.首先查找数组必须是有序的(假设为升序)。2.取查找数组中间的数作原创 2017-08-20 21:14:20 · 782 阅读 · 0 评论 -
归并排序(python3)
本文介绍归并排序及python3实现,原理部分稍后补上,pyhton3代码如下:__author__ = "Allen Liu"__time__ = "2017/8/13"'''This program used to '''import random# 归并排序def merge(data, low, mid, high): i = low j = mid + 1原创 2017-08-14 23:15:08 · 1644 阅读 · 2 评论 -
快速排序代码python3
本文介绍快速排序的思想,以及python3实现:__author__ = "Allen Liu"__time__ = "2017/8/13"'''This program used to '''import randomdef quick_sort(data, left, right): if left < right: mid = partition(data原创 2017-08-14 20:23:06 · 778 阅读 · 0 评论 -
python3实现选择排序和插入排序
选择排序和插入排序与我们上一篇博客讲的冒泡排序在实践复杂度上相近,都是效率比较低的排序算法。这里提供两者的python3代码,具体的算法原理待以后补充:__author__ = "Allen Liu"__time__ = "2017/8/13"'''This program used to '''import random# 选择排序def select_sort(li):原创 2017-08-14 18:19:13 · 539 阅读 · 0 评论 -
详解冒泡排序及Python3代码实现
下面详细介绍冒泡排序的思想以及python3代码实现。首先是这样一个常识:在水中两个相同深度的气泡,大的气泡上浮的快,最先上浮到水面。然后假设有一个列表保存着一组数据,如下所示:左端为里表中的元素,右端为索引。为什么要竖着放,这样可以给你‘冒泡’的感觉。当然我们很容易看出来8是最大的会最先浮出水面,但是计算机不会想我们这样‘看’。它只会一步步来,首先假设第一个数(索引为0的数为原创 2017-08-14 18:11:45 · 17016 阅读 · 0 评论 -
全局解释器锁(GIL)Cpython
本文介绍Cpython中的全局解释器锁(global interpreter lock)。(只有在Cpython中才有奥,Jpython中没有这一机制)Python中的线程是操作系统的原生线程,Python虚拟机使用一个全局解释器锁(Global Interpreter Lock)来互斥线程对Python虚拟机的使用。为了支持多线程机制,一个基本的要求就是需要实现不同线程对共享资源访问的互转载 2017-08-12 22:45:32 · 592 阅读 · 0 评论 -
进程与线程的关系
进程与线程经常会放到一起提及,那么他们有什么联系和区别呢?首先来看一下两者的定义:进程(Process):是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。它的执行需要系统分配资源创建实体之后,才能进行。线程(Threading):也叫作轻量级进程,是一个基本的CPU执行单元,也是程序执行过程中的最小的单元。线程的特点就是在不需要原创 2017-08-12 22:42:59 · 1267 阅读 · 0 评论 -
线程与threading模块(python)
本篇文章首先介绍进程和线程的概念,然后介绍两者之间的关系和区别。原创 2017-08-12 13:48:00 · 907 阅读 · 0 评论