自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 资源 (1)
  • 收藏
  • 关注

原创 golang-设计模式-单例模式-学习笔记

【1】基本理论 定义:单例设计模式(Singleton Design Pattern)理解起来非常简单。一个类只允许创建一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫作单例设计模式,简称单例模式。​​​​​​​常见的使用场景:全局锁,配置信息,唯一递增ID号码生成器等。​​​​​​​单例的几种经典实现方式特点:1. 饿汉式优点:饿汉式的实现方式...

2022-04-03 17:35:23 536

原创 golang-设计模式-开闭原则-学习笔记

【1】基本理论 开闭原则的英文全称是 Open Closed Principle,简写为 OCP。即添加一个新的功能应该是,在已有代码基础上扩展代码(新增模块、类、方法等),而非修改已有代码(修改模块、类、方法等)。 【2】功能描述 假设现在有一个API接口监控告警的需求:可以根据接口配置不同的监控维度(Tps,错误数),然后发送告警通知。后续如果要新增新的维度(eg:超时监控),可以平行扩展代码,以较小代价完成代码修改。【3】设计思路 监控告警的主要功能是查询对...

2022-03-26 20:39:42 1034

原创 golang-设计模式-接口隔离原则-学习笔记

​【1】基本理论 OOP 中的接口,也可以理解为面向对象编程语言中的接口语法。接口的设计要尽量单一,不要让接口的实现类和调用者,依赖不需要的接口函数。【2】功能描述 假设我们的项目中用到了三个外部系统:Redis、MySQL、Kafka。每个系统都对应一系列配置信息,比如地址、端口、访问超时时间等。为了在内存中存储这些配置信息,供项目中的其他模块来使用,我们分别设计实现了三个 Configuration 类:RedisConfig、MysqlConfig、Ka...

2022-03-19 17:51:34 3001 1

转载 递归和非递归的方法往二叉排序树中插入新的节点

文章来源// 二叉树的建立.cpp : 定义控制台应用程序的入口点。//#include using namespace std;//定义二叉排序树的节点typedef struct Node{ int data; struct Node * lchild;//左孩子 struct Node * rchild;//右孩子}Node,* PNode;

2014-09-22 22:11:40 2229

转载 GDB下查看内存命令(x命令)

GDB下查看内存命令(x命令)  可以使用examine命令(简写是x)来查看内存地址中的值。x命令的语法如下所示: x/  n、f、u是可选的参数。  n是一个正整数,表示需要显示的内存单元的个数,也就是说从当前地址向后显示几个内存单元的内容,一个内存单元的大小由后面的u定义。  f 表示显示的格式,参见下面。如果地址所指的是字符串

2014-09-10 09:50:10 1350

转载 static define const inline的产生背景与区别

static define const inlinedefine:定义预编译时处理的宏;  只进行简单的字符替换,无类型检测typedef:定义类型别名 用于处理复杂类型  例: typedef int A;  则:A a; //定义a为intinline: 内联函数对编译器提出建议,是否进行宏替换,编译器有权拒绝  既为提出申请,不一定会成功 static

2014-09-09 10:21:03 907

转载 最长公共重复不重复子串系列问题

最长公共重复不重复子串系列问题 1.求一个字符串中连续出现的次数最多的子串例如字符串“abababc”,最多连续出现的为ab,连续出现三次。http://blog.csdn.net/ysu108/article/details/7795479分析:后缀数组arr[i= 0àstrlen(s) -1]abababcbababcababcbabcabcb

2014-09-06 18:18:40 1022

原创 算法问题分类---Top-K问题与多路归并排序

算法问题分类---Top-K问题与多路归并排序

2014-09-06 11:54:14 13414 2

原创 排列组合递归和非递归算法总结篇

排列组合递归和非递归算法总结篇

2014-09-04 23:05:05 5441

原创 时间复杂度为O(n),空间复杂度为O(1)

1.字符串左移,void*pszStringRotate(char *pszString, intnCharsRotate),比如 ABCDEFG,移3 位变 DEFGABC,要求空间复杂度 O(1),时间复杂度 O(n)(分析:分析与解法假设原数组序列为abcd1234,要求变换成的数组序列为1234abcd,即循环右移了4位,比较之后,不难看出,其中有两段的顺序是不变的:1234和

2014-09-02 17:05:51 10673

原创 算法问题分类---整数和问题系列总结

子数组和,K sum,子集和,最大和

2014-09-02 16:39:39 1547

原创 笨笨熊搬家交通篇

笨笨熊要搬家,它现在的家在B点,新的豪宅在H点,现在要从B点到H点。

2014-08-28 23:04:09 1959

原创 找零问题

为找零问题 设计一种动态规划算法:给定金额n以及各种面额d1,d2,...,dm的数量无限的硬币,求总金额等于n的硬币的最少个数,或者指出该问题无解。

2014-08-18 22:11:48 5521

原创 算法练习(分治法,分区思想)

GetMaxMin.h#ifndef _GETMAXMIN_H_#define _GETMAXMIN_H////Demo1struct MaxMin{ int min; int max;};MaxMin GetMaxMin(int *arr,int beg,int end){ MaxMin maxmin,maxmin1,maxmin2; int mid; if(be

2014-08-18 20:54:50 980

转载 求数组中逆序对的个数

考虑一下,逆序是说a[i]>a[j],i正序”过程。      一个比较好的思路是利用分治的思想:先求前面一半数组的逆序数,再求后面一半数组的逆序数,然后求前面一半数组比后面一半数组中大的数的个数(也就是逆序数),这三个过程加起来就是整体的逆序数目了。看这个描述,是不是有点像归并排序呢?归并排序的思想就是把前一段排序,后一段排序,然后再整体排序。而且,归并排序的规程中,需要判断前一半数组和

2014-08-18 11:22:00 1176

转载 Windows和Linux动态链接库总结

动态链接库为模块化应用程序提供了一种方式,使得更新和重用程序更加方便。当几个应用程序在同一时间使用相同的函数时,它也帮助减少内存消耗,这是因为虽然每个应用程序有独立的数据拷贝,但是它们的代码是共享的。 (1)动态链接库的概念动态链接库是应用程序的一个模块,这个模块用于导出一些函数和数据供程序中的其他模块使用。应该从以下 3 个方面来理解这个概念:动态链接库是应用程序的一部分

2014-08-12 22:28:27 1827

转载 Linux系统调用和库函数

1.      ANSI POSIX 库函数和系统调用 Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底层调用的意思,面向的是硬件。而库函数调用则面向的是应用开发的,相当于应用程序的api,采用这样的方式有很多种原因,第一:双缓冲技术的实现。第二,可移

2014-08-12 11:17:54 1506

原创 stl sort demo

#ifndef FILENAMESORT_H_#define FILENAMESORT_H_#include #include #include #include using namespace std;const int MAXFILENUM = 100;// 定义一个结构体来表示文件, a 代表文件名, b 代表文件类型(要么 "File" 要么 "Dir" )type

2014-08-11 16:26:20 589

转载 STL中的erase函数跟remove函数有什么区别?

http://hi.baidu.com/tkzlpocleodtxzr/item/3a3a6037fdc8460cceb9fe86STL中的erase函数跟remove函数有什么区别?vector中erase是真正删除了元素, 迭代器访问不到了。 algorithm中的remove只是简单的把要remove的元素移到了容器最后面,然后其余元素前移,迭代器还是可以访问到的。因为algor

2014-08-11 11:09:38 1461

原创 I/O多路复用---epoll函数测试

I/O多路复用---epoll函数测试

2014-08-03 10:12:13 1271

原创 TCP带外数据测试

TCP带外数据测试

2014-08-02 21:43:58 1506

原创 linux select 函数使用Demo

tcp_select.cpp#include #include #include #include #include #include #include #include #include #include const int MYPORT = 1240;const int BACKLOG = 5;const int BUF_SIZE = 1024;using n

2014-07-30 22:32:50 2081 1

原创 C++ 类包含关系Demo 笔记

is-a关系 类包含关系构造函数 复制构造函数 重载赋值操作符 析构函数动态内存空间分配和释放 new delete操作static 数据成员友元函数 重载输入>>和输出<<操作符

2014-07-30 22:07:45 1679

原创 Linux下C/C++语言的调试 gdb工具 笔记

Linux下C/C++语言的调试 gdb工具

2014-07-28 22:14:17 1162

转载 linux下C和shell调用的popen函数

本文介绍popen函数的使用方法和行为机理,并给出实际的例子来辅助说明了popen函数的使用方法。popen函数使用FIFO管道执行外部程序,首先让我们看看popen的函数原型吧:#include FILE *popen(const char *command, const char *type);int pclose(FILE *stream);     

2014-07-11 10:30:29 874

原创 IP 地址转换 inet_addr() inet_ntoa() 笔记

inet_addr() inet_ntoa() 及其自实现函数self_inet_ntoa() 和 self_inet_addr()笔记

2014-07-10 11:02:22 6004

转载 boost thread usage demo

1.2.3.

2014-07-06 22:55:33 733

转载 从N个整数中找了(n-1)个元素乘积最大的那一组

给定一个长度为N的整数数组,只允许用乘法,不能用除法,计算任意(N-1)个数的组合中乘积最大的一组。

2014-07-06 22:45:27 2180

原创 Android开源项目pulltorefresh分析与简单使用

在Android开发中有时我们需要访问网络实时刷新数据,比如QQ好友在线状态最新信息,QQ空间需要显示更多的好友动态信息,EOE论坛客户端显示更多的文章帖子信息等。android-pulltorefresh开源项目提供一个向下滑动即刷新列表的功能,将该项目稍作修改即可应用到自己的项目中。

2014-07-03 22:15:10 1505

原创 Eoe客户端源码分析---SlidingMenu的使用

Eoe客户端源码分析及代码注释使用滑动菜单SlidingMenu,单击滑动菜单的不同选项,可以通过ViewPager和PagerIndicator显示对应的数据内容。

2014-06-28 17:32:28 2254

原创 Eoe客户端源码分析---ViewPager、 PageAdapter和PageIndicator 的使用

ViewPager、 PageAdapter和PageIndicator 的使用Eoe客户端源码注释[通过ViewPager和PageIndicator显示数据]

2014-06-27 17:12:54 1698

原创 Android APP 缓存技术笔记2

0.强引用和弱引用⑴强引用(StrongReference)    强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。⑵软引用(SoftReference)如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不

2014-06-23 20:43:48 973

原创 c++ string iterators incompatible

参考内容:http://bingxinye1.blog.163.com/blog/static/168797098201332294321491/

2014-06-17 16:22:22 2922

原创 Android APP 缓存技术笔记1

1.Eoe客户端源码中的缓存技术使用的核心代码及其解析:1.1 主函数分析:package cn.eoe.app.utils;//工具类包RequestCacheUtil.javapublic class RequestCacheUtil {//  公有方法    public static String getRequestContent(Context cont

2014-06-16 11:24:41 793

原创 inflate函数及其使用例子 笔记

例子:1.View view = View.inflate(this, R.layout.splash_animation, null);//splash_animation.xml filesetContentView(view);2.View selectView = getLayoutInflater().inflate(R.layout.list, null

2014-05-13 20:18:20 3770

原创 2-36进制的 两个数相加

2-36进制的 两个数相加 数的长度可以无限制 问题来源:华为编程大赛 二师弟的星际加法输入:N 进制数str1 第一个数字字符串str2 第二个数字字符串输出:str1和str2按照N进制相加的数字字符串结果

2014-05-10 19:45:14 3907

原创 C++ string_demo

string类的使用  以及#include // 使用 string 类时须包含这个文件#include using namespace std;int main(){ string str1; // 输入与输出 cout << "输入字符串 str1" << endl; cin >> str1; getchar();

2014-04-28 20:03:18 746

原创 SDCard文件读写与目录浏览 笔记

1.SD 卡文件的读写  package com.example.sdcardtest; import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;

2014-04-22 11:23:48 1615

原创 带头结点的单链表( 冒泡排序 一次遍历求中间结点的值) 链表 就地反转 倒数第k个结点

Source Code:#include using namespace std;typedef struct student{ int num; struct student *next;}node;node *create(){//with head node node *head,*p,*s;//head -->head p-->end s -->m

2014-04-14 22:06:32 1197

原创 Android C/S结构的简易群聊应用 学习笔记2

1.功能分析:服务器端线程类不断读取客户端数据,读到客户端数据后,将该数据向所有客户端发送一次,而客户端包含两条线程:一条将用户输入数据写入Socket对应的输出流中;另一条负责读取Socket对应输入流中的数据(即从服务器发送过来的数据)。

2014-04-08 18:27:06 1030

SlidingMenu使用源码

使用滑动菜单SlidingMenu,单击滑动菜单的不同选项,在MainActivity中显示选中的滑动菜单选项的名称。结构简单,方便扩展。

2014-06-30

空空如也

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

TA关注的人

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