- 博客(50)
- 收藏
- 关注
原创 排序算法分类
排序分类内部排序:指将所有数据加载到内存中进行排序插入排序:1.直接插入排序 2.希尔排序选择排序:1.简单选择排序 2.堆排序交换排序:1.冒泡排序 2.快速排序归并排序基数排序外部排序:内存 + 磁盘时间频度介绍: 一个算法花费的时间与算法中语句执行的次数成正比例。哪个算法中语句执行次数越多,它话费的时间就多。一个算法中的语句执行次数成...
2020-03-04 09:03:43 125
原创 分布式CAP原理
在分布式系统中,也有类似数据库ACID的特性——就是CAP1. Consistency 一致性一致性又包括强一致性和弱一致性,强一致性是指在它能被访问的任何节点看到的数据都是一样的弱一致性一般实现时最终一致性,允许开始时可能存在差异,但随着时间推移,最终数据保持一致2. Availability 可用性强调集群一直可以用,可以提供服务3. Partition Tolerance 分区...
2020-03-03 14:43:05 179
原创 冒泡排序
冒泡排序规则一共继续数组大小-1次的循环每一趟排序的次数逐渐减小每次都走一遍,不断交换,选出最大的值 public void bubboSort(int[] arr) { // 一共执行数组长度次 for (int i = 0; i < arr.length; i++) { // 每次执行次数比上次少1,因为...
2020-03-02 08:54:16 122
原创 约瑟夫算法问题
题目描述n 个人围成一圈,从第一个人开始报数,数到 m 的人出列,再由下一个人重新从 1 开始报数,数到 m 的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。输入格式输入两个整数 n,m。输出格式输出一行 n 个整数,按顺序输出每个出圈人的编号1≤m,n≤1001\leq m, n \leq 1001≤m,n≤100样例输入10 3; 输出3 6 9 2 7 1...
2020-03-01 12:36:24 293
原创 单链表反转
分别用递归和循环两种方式实现public class ListNode { int num; ListNode next;}// 循环反转public ListNode reverseList(ListNode head) { if (head == null || head.next == null) { return head; } ListNode fi...
2020-02-29 08:53:52 431
原创 从尾到头打印单链表
两种解法:递归循环public class ListNode { int num; ListNode next;}// 递归方式public void reversePrintList(ListNode node) { if (node == null) return; reversePrintList(node.next); System.out.print...
2020-02-28 08:20:30 107
原创 求单链表节点个数
这里用两种方式来解决递归循环public class ListNode { int num; ListNode next;}// 递归方式public int getSingleLinkedListNodeCount(ListNode node) { if (node == null) return 0; if (node.next == null) return...
2020-02-27 08:30:24 4464
原创 JAVA设计模式——原型模式
原型模式主要是用于拷贝对象,而生产新的对象传统的拷贝方式:// 创建一只叫sheep,1岁了的羊Sheep sheep1 = new Sheep('sheep', 1);// 拷贝这只羊Sheep sheep2 = new Sheep(sheep1.getName(), sheep1.getAge());Sheep sheep3 = new Sheep(sheep1.getName(...
2020-02-26 20:15:03 85
原创 JAVA设计模式——抽象工厂模式
抽象工厂模式 是在工厂方法模式上的再一次抽取将工厂方法模式中的公共方法提出,放入一个单独的类中将抽象工厂父类 改为 接口,进一步的抽象由各个子类去实现该接口中的抽象方法这样工厂为一个对象簇,披萨为一个对象簇,工厂代码更容易维护。在工厂方法模式不适用时,适合使用该模式,比如场景如下:在工厂方法模式案例中,假设无法统一公共方法时,这样这些方法放到其他的一个类簇中,就不影响工厂簇了,实现...
2020-02-25 19:01:44 220
原创 阿里云CentOS7安装K8S
1. 在阿里云山申请三台云服务器1.1 环境准备完成配置后的信息服务器IP操作系统CPU内存硬盘主机名节点角色172.18.119.145centos724G50Gk8s-mastermaster172.18.119.150centos724G50Gk8s-node-01node172.18.119.151centos72...
2020-02-24 20:29:46 1397
原创 JAVA数据结构与算法——环形队列
队列介绍队列是一个有序列表,可以用 数组 或 链表 来实现先进先出(FIFO),即先存入队列的数据,会先取出。后存入的数据后取出数组实现环形队列实现原理定义两个指示器,一个指示器front数组记录第一个有效元素的位置;一个指示器tail记录最后一个有效原始的位置的后一位;实际申请空间为 maxSize + 1(赋予成员变量maxSize);多出的这一空间作为留白,即tail指示的...
2020-02-23 17:45:22 194
原创 JAVA设计模式——工厂方法模式
应用案例:客户点披萨时,可以点不同地点、不同口味的披萨,比如北京的奶酪披萨、北京的胡椒披萨 或者伦敦的奶酪披萨、伦敦的胡椒披萨相比于简单工厂模式的案例,多了一个维度条件,直接使用简单工厂模式的话,会导致多个简单工厂类中有大量重复的代码,这里相当于使用了一个模版方法模式,抽取重复的部分到父类,而抽象一个方法教给子类去实现披萨父类:public class Pizza { priva...
2020-02-22 11:11:28 85
原创 JAVA数据结构与算法——稀疏数组
稀疏数组当一个数据中大部分元素都是0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方法是:记录数组一共有几行几列和一共有多少个值把具有不同过值的元素的行列及值记录在一个小规模的数组中,从而起到缩小数据大小的规模的作用。比如:棋盘位置问题000000000000120000000001200000000012000000000000000000000...
2020-02-21 08:51:24 154
原创 JAVA设计模式——简单工厂模式
简单工厂模式属于创建性模式,功能:又一个工厂对象决定创建出哪一种产品类的实例是最简单最实用的模式下面用披萨工厂举例:// pizza 父类public class Pizza { private String name = ""; public void setName(String name){ this.name = name; } ...
2020-02-20 08:39:05 96
原创 JAVA设计模式——单例模式(6种实现方式)
所谓单例模式,就是采取一定的方法保证整个软件系统,对某个类只存在一个对象实例,且该类只提供一个取得其对象实例的方法。饿汉式单例模式(静态变量)/** * 饿汉式 * 线程安全 */public class Singleton { private static Singleton instance = new Singleton(); private Singleto...
2020-02-19 12:20:49 93
原创 pull 解析
xml文件: 1 xml version="1.0" encoding="UTF-8"?> 2 root> 3 student id="1" group="1"> 4 name>张三name> 5 sex>男sex> 6 age>18age> 7 email>zhangsan@163.comemail>
2020-02-19 12:19:10 260
原创 Android 正常拨号去电流程
/*** @author 江忠锦* http://blog.csdn.net/u012913972* 我的新浪博客: 奋进的江*/在DialpadFragment 中执行dialButtonPressed()方法: /** * Called by the containing Activity to tell this Fragment that
2020-02-19 12:18:33 572
原创 设计模式解决的问题
编写软件过程中,程序员面临着来自耦合性、内聚性以及可维护性、可扩展性、重用性、灵活性等多方面的挑战,设计模式是为了让程序具有更好的:1. 代码重用性(相同功能代码,不用多次编写)2. 可读性(编程规范性)3. 可扩展性(增加新功能时十分方便)4. 可靠性(增加新功能后,对原来的功能没有影响)5. 实现高内聚,低耦合的特性# 懂得了设计模式,你就懂了面向对象分析和设计(OOA/D)的精...
2020-02-19 12:15:33 1920
原创 InnoDB_锁总结
1. 查询会对资源添加共享锁加了共享锁的资源不可以被修改;但可以被查询(也是会在资源上再加共享锁)2. 数据修改会对资源添加排他锁加了排他锁的资源只能被持有这个排他锁的事务读取和修改,其他事务读取或者修改这个资源会被阻塞排他锁共享锁排他锁不兼容不兼容共享锁不兼容兼容...
2020-02-14 22:38:13 91
原创 数据库三大范式
第一范式: 表中的所有字段都是不可再分的第二范式: 表中必须存在业务主键,并且非主键依赖于全部业务主键第三范式: 表中的非主键列之间不能有相互依赖...
2020-02-14 22:37:15 154
转载 C++之运算符重载(2)
上一节主要讲解了C++里运算符重载函数,在看了单目运算符(++)重载的示例后,也许有些朋友会问这样的问题。++自增运算符在C或C++中既可以放在操作数之前,也可以放在操作数之后,但是前置和后置的作用又是完全不同的(q前置运算符:先加1,再赋值;后置运算符:先赋值,再加1)。那么要怎么重载它们,才可以有效的区分开来呢?今天我就来说说C++中是怎么处理前置运算符和后置运算符的重载的。以及介绍一下插入运
2014-08-24 22:27:48 476
转载 C++之运算符重载
转zC++中运行时的多态性主要是通过虚函数来实现的,而编译时的多态性是由函数重载和运算符重载来实现的。这一系列我将主要讲解C++中有关运算符重载方面的内容。在每一个系列讲解之前,都会有它的一些基础知识需要我们去理解。而运算符重载的基础就是运算符重载函数。所以今天主要讲的是运算符重载函数。 1.运算符重载是对已有的运算符赋予多重含义,使同一个运算符作用域不同类型的数据导
2014-08-24 22:22:39 347
转载 [JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目
(1)项目导入JAR包:1、在项目目录里建立一个libs目录,将外部jar包拷贝在里面。2、右键点击项目,Bulid Path->Configure Build Path3、在设置Libraies项,选择刚才的位置添加jar包。3、在Order and Export项里,将外部jar包选中。4、clean项目后,重新编译,这时的apk包里应该是包含外部jar啦。不过我还是有
2014-08-10 15:27:16 547
转载 Android-sharedUserId数据权限
Android给每个APK进程分配一个单独的用户空间,其manifest中的userid就是对应一个Linux用户(Android 系统是基于Linux)的.所以不同APK(用户)间互相访问数据默认是禁止的.但是它也提供了2种APK间共享数据的形式:1. Share Preference. / Content ProviderAPK可以指定接口和数据给任何其他APK读取. 需要
2014-08-09 20:59:14 425
转载 Android Manifest.xml 结构详解
关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities,services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services,和Intent
2014-08-09 20:58:09 489
转载 android 简单的aidl
1.首先在src目录下建立一个file,命名为IPerson.aidlpackage com.example.aidldemo;interface IPerson { void setAge(int age); void setName(String name); String display();}2.接着要实现这个aidl里面的方法
2014-07-31 23:21:51 418
转载 Android ActionBar完全解析,使用官方推荐的最佳导航栏(下)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/25466665本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/guide/topics/ui/actionbar.html限于篇幅的原因,在
2014-07-30 23:52:22 505
转载 Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/18234477本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/guide/topics/ui/actionbar.htmlAction Ba
2014-07-30 23:18:15 441
转载 Android Fragment应用实战,使用碎片向ActivityGroup说再见
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/13171191现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了,今天我们就来学习其
2014-07-29 23:27:08 493
转载 Android Fragment完全解析,关于碎片你所需知道的一切
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8881711我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常
2014-07-29 23:26:16 447
转载 Android手机平板两不误,使用Fragment实现兼容手机和平板的程序
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8744943记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。当时项目组定的方案是,制作两个版本的App,一个手
2014-07-29 23:22:51 467
转载 java从字符串中提取数字
随便给你一个含有数字的字符串,比如:String s="eert343dfg56756dtry66fggg89dfgf";那我们如何把其中的数字提取出来呢?大致有以下几种方法,正则表达式,集合类,还有就是String类提供的方法。1 String类提供的方法:[html] view plaincopypackage 测
2014-07-24 21:55:21 559
转载 Android_adb shell am/pm使用
adb shell am instrument [options] 作用:启动对instrument实例的监视。参数[options]:-e // -e选项需要放在-w选项之前作用:提供了以键值对形式存在的测试选项。Android中提供了多种键值对,具体参见下表。举例:-e class com.android.phone.FIncomingCallTests
2014-07-20 13:19:26 480
转载 dom 解析
位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效果可能会不理想首先来了解点Java DOM 的 API:1.解析器工厂类:DocumentBuilderFactory创建的方法:DocumentBuilderFactory dbf = DocumentBuilderFactory.newIns
2014-07-19 22:34:02 433
转载 SAX 解析详解
一千年的时光,我无数次掀起岁月的帷幔,只为和你,在某一个平静如水的日子相遇,然后相识,倾情一生,缱绻一世,好美的散文,好吧,我情愿把这个“你”当作android;),使用sax解析xml文件是我见到过的最为简单的一种解析xml的方式了。Java代码SAXParserFactory factory = SAXParserFactory.newInstance(); SAX
2014-07-19 22:15:09 593 1
转载 使用wifi连接eclipse进行程序调试
有的时候,我们限于种种原因,无法使用USB来连接设备进行调试,此时,可以通过Wifi连接来进行。首先打开手机的wifi设置,使其连接到网络。然后,需要在手机上对adb连接端口进行设置,这里需要有root权限的终端(terminal)应用,这种类型的应用在各个Market都有不少,选择一个适合的就可以了。我使用的是豌豆荚上的 终端模拟器(安智汉化)。然后,在手机中打开这
2014-07-19 22:11:00 619
转载 如何在命令行模式下编译运行带包的java文件
问题 假设两个文件: D:\workspace\com\A.java D:\workspace\com\B.java两个文件都有: package com; 如何编译运行? 进入D:\workspace路径下,输入: javac com\A.java com\B.java
2014-03-29 23:27:09 695
转载 Java关键字this、super使用总结
Java关键字this、super使用总结 一、this Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final使用总结”一文中给出了明确解释
2014-03-29 23:02:58 444
转载 Java中CallBack的理解
CallBack是回调的意思,熟悉Windows编程的人对"回调函数"这四个字一定不会陌生,但是Java程序员对它可能就不太了解了。"回调函数"或者"回调方法"是软件设计与开发中一个非常重要的概念,掌握"回调函数"的思想对程序员来说(不管用哪种语言)是非常必要的。 那么什么是回调函数呢?我认为,回调函数就是预留给系统调用的函数,而且我们往往知道该函数被调用的时机。这里有两点需要注意:第一
2014-03-29 22:16:59 661
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人