自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 问答 (1)
  • 收藏
  • 关注

原创 博客迁址

博客迁址本博客不再维护, 新地址:这里写链接内容

2017-06-28 09:11:52 340

原创 Android存储选项简析

Android存储选项简析Android存储选项简析简述共享首选项内部存储和外部存储内部存储数据区域缓存区域清除数据和清除缓存外部存储权限检查介质的可用性公有文件和私有文件存储公有文件存储私有文件缓存文件数据库各部分目录图示总结简述 对于用户来说,Android系统的存储状况,貌似不像windows那样直观,使用windows的时候,硬盘空间每个细微的地方,都能

2017-03-25 22:05:29 771

原创 Android-系统权限的前世今生

Android-系统权限的前世今生Android-系统权限的前世今生简述Android权限等级正常权限危险权限权限组Android权限前后版本变化权限的申请声明权限运行时权限请求检查权限请求权限处理请求结果总结简述 自从Android6.0面世之后,Android中的权限要求就更加严格和灵活了,6.0系统之前,一个app应用所需的权限,只需要在其安装的时候一次性向用户请

2017-03-21 11:33:45 634 1

原创 Android-从数据库到Content Provider

Android-从数据库到Content ProviderAndroid-从数据库到Content Provider使用SQLite数据库SQLiteOpenHelper数据库的增删改查Content ValueCursor怎样执行插入查询删除更新使用ContentProvider创建ContentProvider注册ContentProvider发布ContentPro

2017-03-20 22:39:44 1451

原创 浅谈Android View

浅谈Android View浅谈Android View何为ViewView是怎样呈现给用户的View的绘制流程onMeasureonLayoutonDraw布局管理器Demo自定义View自绘控件组合控件继承控件总结何为View Android中所有可视化组件,都是从View类派生而来的,通常我们把它们称为视图。 ViewGroup是视图组,是对View类的扩展,一

2017-03-19 23:00:19 514

原创 Hadoop-1.2.1分布式集群搭建(亲测有效版)

Hadoop-1.2.1分布式集群搭建Hadoop-121分布式集群搭建环境条件安装jdk并配置环境安装ssh-client安装ssh-server配置ssh免密登录安装配置Hadoop-121搭建hadoop-121分布式集群分别配置两个虚拟机的hadoop启动Hadoop集群进入管理后台查看集群情况使用ip别名应对ip变动情况总结环境条件 操作系统:Ubuntu16.

2017-03-17 10:14:44 3662 2

原创 排序算法总结

冒泡排序选择排序插入排序归并排序希尔排序堆排序快速排序计数排序基数排序冒泡排序/** * 冒泡排序 * 最坏时间复杂度:O(n^2) * 平均时间复杂度:O(n^2) * 空间复杂度:O(1) * 算法稳定度:稳定 */template<class T>void bubbleSort(T* start, T* end){ if(start >= end) re

2017-03-11 21:52:35 254

原创 二叉树操作总结

#include<iostream>#include<stack>#include<queue>#include<string>#include<vector>using namespace std;template<class T>struct Node{ T value; Node* pLeft; Node* pRight; bool isFirst;

2017-03-05 20:05:53 412

原创 字符串匹配算法

字符串匹配算法字符串匹配算法朴素字符串匹配算法Rabin-Karp算法有限自动机算法KMP算法笔面高频题单词间的逆序调整前n字符后移两字字符按照字典序最小拼接判断两个字符串是否互为旋转词朴素字符串匹配算法//朴素字符串匹配算法(输出偏移量)/* * 朴素字符串匹配算法是通过一个循环找到所有有效偏移,该循环对n-m+1可能的s值进行检测, * n是要在上面进行查找的对象大小,m

2017-03-05 19:58:29 1574

原创 C# 类型、对象、方法执行时的相互关系的一点思考

C# 类型、对象、方法执行的相互关系的一点思考 本文将从以下几个问题,来阐述C#类型、对象、线程栈、托管堆运行时的相互关系。C 类型对象方法执行的相互关系的一点思考new操作符的作用方法执行的过程类型对象与对象之间的关系方法表new做的事情方法执行的过程类型对象与对象之间的关系方法表静态方法、实例方法、虚方法的运行时区别new操作符的作用

2017-01-18 08:53:22 980 2

原创 .net 异步编程小结

.net 异步编程小结using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Threading.Tasks;namespace Test{ public class MyMain {

2015-08-25 14:57:09 694

原创 C#事件

C#事件using System;using System.Collections.Generic;using System.Linq;using System.Text;/*事件概述事件具有以下特点:发行者确定何时引发事件,订户确定执行何种操作来响应该事件。一个事件可以有多个订户。 一个订户可处理来自多个发行者的多个事件。没有订户的事件永远也不会引发。事件通常用于通知用

2015-08-24 02:04:58 931

原创 作用域内枚举(C++11)

//作用域内枚举#includeusing namespace std;/* 下面这两种定义枚举的方式有错误,错误提示为枚举数sum重定义。 在C++11之前我们不能在类中定义两个枚举类型有相同的枚举数。这样会导致枚举数重定义的错误。*///class Test1//{//public:// enum {sum = 10};// enum {sum = 20};//

2015-06-18 10:23:57 2905 1

原创 vs2013中设置输出缓冲区

//vs2013设置输出缓冲区/*windows下是没有设置输出buffer的,也就是说C++中cout的时候,会直接输出,而不是先进入缓冲区等缓冲区满或者被刷新再输出。但是我们可以手动设置缓冲区*/#includeusing namespace std;int main(){ /* 这个段代码在Linux下用g++执行不会输出,因为1被存到缓冲区中,而windows下会输出,

2015-06-14 22:58:33 2845

转载 C标准I/O缓冲区:全缓冲和行缓冲

ISO C标准I/O提供了全缓冲和行缓冲全缓冲:在进行I/O操作时,只有当I/O缓冲区被填满时,才进行真正的I/O操作。所以对于全缓冲的缓冲区可由标准I/O例程自动刷新,即当缓冲区填满时,还有一种方法就是调用函数fflush进行刷新。行缓冲:在I/O操作时,输入输出遇到换行符时进行,进行真正的I/O操作。对于行缓冲,标准I/O每一行缓冲区的长度是固定的,所以只要填满了缓冲区,即使没有遇到换

2015-06-14 22:43:15 1060 1

原创 C++动态数组简单模拟二叉堆

//C++动态数组简单模拟二叉堆#includeusing namespace std;class BinaryHeap{private: int cap; //数组最大容量 int size; //当前元素个数 int* datas; //数组首地址public: explicit BinaryHeap(int cap_) :cap(cap_), size(0) {

2015-06-11 10:19:01 784

原创 哈希表开放寻址法之线性探测法解决冲突问题

#include#includeusing namespace std;class HashTable{private: enum judge{Empty, Value}; struct Node { int data; enum judge j; Node() :j(Empty){} }; Node* TheNodes; int TableSize;pub

2015-06-09 20:35:49 2195

原创 哈希表分离链接发解决冲突

#include#includeusing namespace std;class HashTable{private:struct Node{int data;Node* pnext;Node(int data_) :data(data_), pnext(0){}Node() :pnext(0){}};Node** TheLis

2015-06-09 19:47:11 562

原创 类模板友元函数坑死人不偿命的错误

错误例程:#includeusing namespace std;templateclass Student{private: T age;public: Student(T age_) :age(age_){} friend bool operator==(const Student& s1, const Student& s2);};int main(){

2015-06-04 21:33:29 1347

原创 C++ 虚函数、静态联编和动态联编、抽象类

//C++ 虚函数、静态联编和动态联编、抽象类#include#includeusing namespace std;class People{private:    string name;    int age;public:    People(string name_, int age_):name(name_), age(age_){}

2015-05-23 10:41:25 717

原创 C++友元复习

#include#includeusing namespace std;class Student;class Class{private:int id;string student_name;public://因为现在还没有具体声明Student类,所以我们要把函数的实现放在Student类的声明后面void show(cons

2015-05-22 23:05:41 389

原创 sql server 存储过程总结

create procedure proc_人事@sex varchar(10) = '李四'                        --参数 后面添加值为默认参数asselect * from 员工表 where Name=@sex--前面加上alter,后面重复创建过程可以进行修改以前有的存储过程create procedure proc_人事      

2015-05-18 23:57:09 478

原创 T-sql总结

/*生命变量   declare 变量名 变量类型*/declare @one varchar(10), @two int, @three varchar(10)/*变量赋值 可以用set或select关键字,可以把select执行的结果赋值给变量*/set @one='one'select @two=2set @three='three'/*判断语句 be

2015-05-18 23:56:34 569

原创 sql sever2008表连接复习总结

use mastergoif exists(select * from sysdatabases where name = '学生管理系统')drop database 学生管理系统create database 学生管理系统on primary(name = '学生管理系统_data',filename = 'E:\temp\学生管理系统_data.mdf',

2015-05-18 23:56:06 818

原创 C++类转换构造函数和转换函数复习

//C++类转换构造函数和转换函数复习#include#includeusing namespace std;class Student{private:    string name;    int age;    double grade;public:    Student(string name_, int age_, doubl

2015-05-18 23:31:45 495

原创 AVL树C++实现

//AVL树#include#includeusing namespace std;class avl_tree{private:struct tree{int data;tree* L;tree* R;int height;tree(int data_) :data(data_), L(0), R(0), height(0){}

2015-05-14 11:21:08 643

原创 二叉树中缀表达式到后缀表达式的转换

规则:当读到一个操作数时,立即把它放到输出中。当读到操作符时不立即输出,从而必须先存在某个地方。正确的做法是将已经见到过的操作符放进栈中而不是放到输出中。当遇到左括号时我们也要将其推入栈中。如果遇到一个右括号,我们就弹出栈中的符号并输出,直到遇到对应的左括号,并且这个左括号只弹出,不输出。存入栈中的操作符的规则:优先级必须保持从上到下为高到低。遇到一个操作符时,我们从栈中弹出元素,直到发现

2015-05-09 23:00:06 3048 1

原创 优先队列C++数组实现

//优先队列#includeusing namespace std;class Queue{private:struct Node //创建一个节点信息,包括数据和优先级{int data;int level;Node() :data(), level(-1){}Node(int data_, int level_) :data(data_),

2015-05-07 16:56:52 2108

原创 C++模板类复习

//C++模板类复习#includeusing namespace std;template class test{private:    T1 temp1;    T2 temp2;public:    test(){}    test(T1 data1, T2 data2):temp1(data1),temp2(data2){}    v

2015-04-27 21:13:56 524

原创 C++智能指针模板类复习

//C++智能指针模板类复习#include#includeusing namespace std;//智能指针用于确保程序不存在内存和资源泄漏且是异常安全的。//C++98中提供了auto_ptr,C++11摒弃了auto_ptr,并提出了unique_ptr 、shared_ptr、weak_ptrvoid show1(){    int* p = ne

2015-04-27 19:22:32 605

原创 C++中char* const char* string 之间的转换复习

//C++中char* const char* string 之间的转换复习#include#includeusing namespace std;int main(){//string 转 const char*string str = "linukey";const char* s = str.c_str();//const char* 转

2015-04-26 11:22:34 458

原创 利用包装器以及lambda表达式实现二叉查找树

#include#includeusing namespace std;template class tree{private:struct Node{T data;Node* L;Node* R;Node(T d) :data(d), L(NULL), R(NULL){}};Node* root;int Count;publ

2015-04-26 00:46:47 588

原创 C++ 在堆上开辟与释放二维、三维指针

//C++ 在堆上开辟与释放二维、三维指针#includeusing namespace std;int main(){    //二级指针的开辟与释放    int number = 0;    int** p = new int*[4];    for(int i = 0; i     {        p[i] = new int[4];    }

2015-04-25 22:32:32 1774

原创 C++引用复习

//引用复习#includeusing namespace std;void show1(){    cout }void show2(){    cout }void show3(){    cout }int main(){    int one = 1;    int &r1(one); //左值

2015-04-25 21:33:37 526

原创 模板元编程加速递归

//模板元编程加速递归//缺点:模板元在编译时处理,无法调试,并且会加大代码体积#includeusing namespace std;template struct data{    enum{res = data::res + data::res};};template struct data{    enum{res =

2015-04-24 23:12:57 847

原创 C++实现C语言printf函数

//简单实现C语言中printf函数#include#include#includeusing namespace std;void print(const char* str)//处理只有字符串的时候{    cout }template void print(const char* str, T t, Args... args)

2015-04-24 21:46:09 1279

原创 C++模板函数复习

#include #include using namespace std;template T add(T one, T two){    cout     return one + two; // 函数模板只有在调用时才编译,有的编译器在初次编译时就会编译}int add(int one, int two){    cout

2015-04-24 11:53:00 496

原创 可变参数模板用法

//可变参数模板//可变参数模板,可以创建可接受可变数量参数的模板函数和模板类//本程序通过模板函数来实例一下可变参数模板的基本用法#includeusing namespace std;void one(){}//当最后一个参数传完后,需要一个无参的重载版本template //当只剩最后一个参数时,编译器优先选择此模板,这样最后一个输出后面就没有逗号了voi

2015-04-23 23:00:16 703

原创 C++中类const、static、static const成员变量

#includeusing namespace std;class Test{private:const int a;  //const 成员变量只能在构造函数的成员初始化列表中初始化,不能在函数体中和其他地方static int b; //static 成员变量需要在全局范围内初始化,格式: 类型名 类名::变量名 = 值static const int c;

2015-04-21 20:44:17 766

原创 C++ lambda表达式复习

#include#include#include#includeusing namespace std;int main(){//最简单的lambda表达式[](){};//lambda表达式也就是一个函数,我们可以把它赋给函数指针,也可以在后面加上括号使用。////[]里面可以添加一些限制lambda块语句中使用外部变量的限制符。一共有四种情况

2015-04-09 17:10:00 617

空空如也

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

TA关注的人

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