自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (3)
  • 收藏
  • 关注

原创 7,Reverse Integer

/*Reverse digits of an integer.Example1: x = 123, return 321Example2: x = -123, return -321*/#include#define INT_MAX 2147483647l#define INT_MIN -2147483648lint reverse(int x

2015-10-02 12:44:26 352

原创 2,Add Two Number (LinkList Math)

2,Add Two Number (LinkList Math)/*You are given two linked lists representing two non-negative numbers.The digits are stored in reverse order and each of their nodes contain a single digit.Add t

2015-09-26 18:14:37 414

原创 1,Two sum (Hashtable Array)

/*Given an array of integers, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two numbers such that they add up to the target,whe

2015-09-26 18:12:31 456

原创 运算符重载

在我们的编程使用中,我们对基本数据类型的数据例如整形,浮点, 双精度可以进行加减乘除. C++中通过class关键字可以自定义类类型的数据类型,但是默认不支持加减等运算符操作. 在编程实践中,我们可能需要类似基本数据类型的操作,比较幸运的是,C++给我们提供了运算符重载机制. 一, 运算符重载的方法 1, 通过友元函数来实现—这也是友元函数存在的最大意义 2,通过成员函数来实现二,运算符重载的本

2015-08-07 00:21:28 353

原创 友元类

友元类意思就是类的好朋友,好朋友之间是无话不说没有秘密的, “好”到可以任意访问和修改类的private属性的成员变量和访问private属性的成员函数.例如:若B类是A类的友员类,则B类的可以访问A类的任意成员. 友元类通常设计为一种对数据操作或者类之间传递信息的辅助类 在JAVA中, 可以通过java.lang.reflect包下面的API反射到java类中的所有成员, 然后可以做出对应的操

2015-08-05 22:23:21 1347

原创 友元函数

在C++语法中有一个叫做友元函数,类的好朋友,好到可以直接访问和修改类的私有成员.C++这样设计虽然提供了另外一种方式来访问和修改类的私有成员,但是也破坏面向对象设计的封装这个原则一,友元函数的定义和性质 1,友元函数需要在类中使用friend关键字进行声明, 声明在public,private,protected域都是一样的.如: friend void setFriendA(FriendFu

2015-08-02 01:38:06 489

原创 namespace的用法

在C语言中只有一个全局作用域,也就是C语言中所有的全局标识符共享一个作用域。C语言中不同文件的变量命名可能会有冲突 ,比较幸运的是,在C++中提供了一个简洁的方式来使用命名空间成员,一种安全的机制。一, 命名空间的声明,使用 命名空间的声明: namespace name{……..} 命名空间的使用: using namespace name; 或者: name::variable_n

2015-07-24 15:18:26 346

原创 C语言一个关于文件操作的示例

一,示例需求介绍 介绍一个关于C语言的文件操作的例子. 在磁盘某个位置存放某个文件, 该文件用来保存输入的键值对(key-value). 例子具有以下功能1,持久化的按行存放键值对(key-value),不支持重复的key 2,根据key查找对应的value , 查到对应的value显示, 不存在提示 3,退出功能二,思路 <一> 根据需求我们需要封装两个功能”库函数” 提供存放//存

2015-07-20 22:36:04 499

原创 结构体的浅copy和深copy

<一>浅复制 关于结构体的浅copy和深copy问题,下面先看一个示例 定义一个Teacher类型结构体, 然后定义变量t1,t2, 对t1进行初始化,然后通过copyStruct函数将t1赋值到t2 代码如下:#include "stdafx.h"#include<stdlib.h>#include<stdio.h>#include<string.h>#define _CRT_SEC

2015-07-19 18:10:05 570

原创 一个结构体的示例

定义一个结构体Teacher类型, 然后声明一个Teacher数组 ,Teacher包含名字和数据. Teacher数组元素在堆空间开辟 , 然后输入名字年龄,接下来打印输入的内容, 再然后释放开辟堆的内存代码如下:#include"stdafx.h"#include<stdio.h>#include<string.h>#include<stdlib.h>#define _CRT_SEC

2015-07-19 15:17:48 625

原创 C语言中结构体的声明方式

在C语言中结构体可以帮助我们自定义数据类型,使我们的编程趋于灵活. 数据类型的本质是一块固定大小的内存空间. 下面我们介绍结构体的声明方式一,结构体声明方式一//结构体声明 在声明的时候对结构体重命名typedef struct Teacher{ char tName[64]; int tAge;}Teacher;//结构体类型引用Teacher t;二,结构体声明方式二/

2015-07-16 22:59:40 1844

原创 C语言定义数组指针的三种方法

C语言定义数组指针的三种方法C语言中有一种语法叫做数组指针,就是使用一个指针变量指向一个数组,然后对数组进行访问操作. 下面给出代码示例定义的方法, 代码如下:#include<stdio.h>int main(){ //定义数组指针的第一种方法 { printf("=====================================\n");

2015-07-14 22:47:30 16917

原创 C语言递归实现字符串翻转

一,C语言递归实现字符串逆转 简单的实现”abc”的逆转 函数原型:void reverse(char* value,char* result) char* value为待逆序字符串 char* result为存放的逆序结果1,首先判断是否value是否为空和value是否是字符串结尾条件 条件不满足则return2,value+1 前移一个字符,递归调用reverse函数3,将value

2015-07-08 00:17:47 2232

原创 C语言非递归实现字符串逆转

一,非递归方式实现一个字符串”abcdefg”逆转. 我们可以按照如下步骤进行: 1,求出这个字符串的长度 2,两个索引 i和j, 初始值i为0,j为字符长度减1 3,然后将两个索引位置的字符交换,然后i加1,j减1. 4,如果i小于j那么重复3二,步骤图示: 三,代码如下:#include "stdafx.h"#include<string.h>void reverseStr_1(

2015-07-07 22:39:44 749

原创 C语言中返回局部变量或临时变量的地址的错误

先看如下代码, 在编译运行的时候会抛出警告——-warning C4172: 返回局部变量或临时变量的地址,并且在main函数中的打印结果不符合我们的预期代码如下:int* visitArea(){ int a = 10; return &a;}int main(){ int* a = visitArea(); printf("%d\n", *a); pr

2015-07-06 16:13:41 4933 1

原创 C语言程序内存四区(栈区,堆区,全局区,代码区)

一,综述 在C语言程序中, 代码在内存中进行执行的时候,我们粗略的将程序所占用的内存分为四个区域—-栈区,堆区,全局区,代码区. 每个程序都有唯一的四个内存区域.我们需要熟悉和了解各个区域的特性,例如存储什么类型的数据, 有谁去申请开辟, 又有谁去管理释放等等二,内存四区介绍<一>栈区 由编译器自动分配释放, 存放函数的参数值,局部变量等. 例如: 参数buf,参数bufsize和siz

2015-07-02 01:27:32 8218

原创 一个关于数据类型的问题

一, 首先先一个很小的示例,然后观看他的打印结果示例代码:`/* 一个示例的数组类型的思考 */include “stdafx.h”includeb=2489524, b+1=2489528&b=2489524, &b+1=2489564请按任意键继续. . .二,结果和分析 b=2489524和b+1=2489528 相差4,刚好一个整形数组 &b=2489524和&b+1=24

2015-07-02 01:05:51 385

原创 C语言中数组作为函数参数的问题

一:综述 C语言中数组作为函数参数运行的时候, 函数在执行的过程中,数组参数是否像其他类型的参数(例如:int类型)不发生改变的执行呢? 我们首先看一个示例,然后观看他的打印结果,然后分析原因二,代码示例和运行结果/*C语言中 数组作为函数参数退化为指针我们以打印数组的为例, 数组作为打印函数的参数*/#include "stdafx.h"#include<stdio.h>/*

2015-07-02 00:04:58 1858

原创 选择排序(select sort)

**选择排序**一,综述 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法.二,排序思想 排序的时候一般分为两个区域. 有序去arr[0…i]和待排序区 arr[i+1…n-1] 每趟循环比较是arr[i+1]依次和arr[i

2015-07-01 23:40:20 511

原创 数据结构学习概要

准备学习数据结构与算法. 主要参照<<数据结构(C语言版)>>清华大学出版社 <<数据结构与算法分析 java语言描述 第二版>>(Data Structrues and Algorithm Analysis in Java Second Edition)第一部分:概论 第二部分:线性表 2.1 综述 2.2单链表 2.3双链表

2015-04-26 18:32:08 366

原创 Java线程停止的方法

在java编程中我们不可避免的要使用到并发编程.假设我们现在有一个这样的需求,一个线程需要完成一个任务,但是任务执行的过程中,需要停止. 在早期的JDK版本中提供了stop suspend等方法.但是现在已经废弃掉了,因为他可能会引起某些安全问题. 所以一般情况下线程的终止是等到起任务执行完毕,然后自然而然的停止掉. 下面我们探讨两种停止的方法.一,标志位 假设一个线程在执行过程中存在一个循环,我

2015-04-24 00:23:33 925 1

原创 JAVA中Thread VS Runnalbe

Thread Runable

2015-04-20 16:27:40 800

原创 Activity的启动模式

在android开发中,我经常使用到Activity, 也知道Activity的启动模式有四种. 分别是standard(默认), singleTop,singleTask, singleInstance 下面我们讨论下这四种启动模式的特点: 1,standard 每次启动一个standard模式的activity,都会将其放入任务栈中2,singleTop 如果在任务的栈顶正好存在acti

2015-04-13 21:29:06 440

原创 android数据库的升级

在android开发中,app版本迭代过多,不可避免的有Sqlite数据库升级和降级的操作.当我们通过SqliteOpenHelper获得一个SqliteDatabase实例的时候,他内部会判断版本号, 调用对应的升级操作和降级操作.抽象类的升级回调方法是一个抽象方法, 降级回调方法直接抛出一个RuntimeException异常.所以,碰到这个问题我们要注意复写升级和降级的逻辑. 我们以升级为例

2015-04-09 18:52:39 443

原创 android下数据的优化

假设现在有一个这样的简单场景, 就是向一个数据库中插入2000数据,我们怎么优化呢? 1,直接插入方式private void insert(){ SQLiteDatabase db = mHelper.getWritableDatabase(); long startTime = System.currentTimeMillis(); String

2015-04-09 18:20:19 342

原创 Android 环境下Sqlite数据库的创建

对于android环境下的sqlite方式创建方式有两种.一是android提供的继承SqliteOpenHelper创建 .二是Sqlite官网提供的方式一, 通过继承SqliteOpenHelper实现数据库的创建.代码如下:public class DBHelper extends SQLiteOpenHelper { private static final int DATABASE_

2015-04-09 15:09:58 539

原创 android开发标题栏统一管理和自定义属性配置

在android开发中,app每个界面基本上都会有一个标题栏, 并且标题栏的布局大概也都比较相似. 所以我们有时候为了避免过多的重复代码和便于所有的标题统一管理,我们一般会定义一个公共的xml布局文件作为头布局,如果页面使用使用标签引入. 然后再代码中将某些控件findViewById出来,进行监听的设置, 隐藏或者显示设置等等. 今天我们使用一种新的方式统一管理布局,自定义一个布局view并且

2015-04-07 21:51:42 1659

原创 Activity生命周期

关于activity的生命周期,大家都知道, onCreate()(创建)—>onStart()(显示)->onResume()(显示且获取焦点)—>onPause()(失去焦点)—>onStart()(不显示,但在任务栈)—>onDestory()(销毁)现在假设有个Activity A跳转到Activity B,然后再按返回键返回A, 再按返回键退出程序,那么这些生命周期的调用顺序是什么呢?

2015-04-06 20:33:04 314

原创 Thread的join()方法

关于Thread实例的join代表的含义,先直接看代码和运行结果public class Main { public static void main(String[] args) { DemoRunnable demo1 = new DemoRunnable(null); Thread t1 = new Thread(demo1,"thread-demo-1")

2015-04-06 00:25:26 390

原创 HashMap粗略分析

最近开了下HashMap的实现,看了看实现思路.带着10个问题看实现. 1,为什么容量必须是2的正整数幂呢? 2,加载因子的作用? 3,怎么从HashMap中通过key取value? 4,怎么向HashMap中存放键值对? 5,怎么删除键值对? 6,什么时候扩容?扩大多少?怎么扩? 7,public HashMap(Map<? extends K, ? extends V> m)这个构

2015-04-04 14:35:54 455

原创 Set集合重复元素的判断

Set集合比较特殊,他的方法基本上和Collection接口的方法一致,并且他没有根据索引得到对应值的get(int index)方法. 更重要的是Set集合不能放置重复的元素.她是怎么判断的呢?那么,我们首先要让对象具有比较性 一,存储的自定义对象实现接口 Comparable 复写public int compareTo()方法. 返回0表示二者相等. 如果返回大于0的整数(一般写1),则认

2015-04-03 19:08:38 2168

原创 Map集合的Key比较

类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法.在Object类中有两个重要的方法 hashCode() 和equals(Object obj).在我们使用集合容器的时候我们需要对他进行复写.一,jdk文档对hashCode()和equal(Ojbect obj)的介绍 1,equals(Object obj) public

2015-04-03 18:37:22 2275

原创 模仿快递打车倒计时

模仿快的打车倒计时功能1,创建一个画笔2,画一个完整的圆3,画剩余时间4,画倒计时显示的圆弧核心代码如下:protected void onDraw(Canvas canvas) { super.onDraw(canvas); // step 1:设置画笔 Paint paint = new Paint(); paint.setAn

2015-02-07 00:58:06 446

数据升级demo

android下面sqlite数据库平滑升级demo

2015-04-09

android开发标题统一管理

自定义view方式的android开发标题统一管理 .包括自定义属性, 点击事件定义等

2015-04-07

HashMap分析

JDK HashMap源码粗略分析 根据10个问题进行阅读探讨

2015-04-04

空空如也

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

TA关注的人

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