随笔分类 -  programming

摘要:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 欲实现JSON字符串和java对象之间的互相转换,方法有很多!本人层也因为项 阅读全文
posted @ 2014-02-26 15:53 huangshanshan 阅读(1631) 评论(0) 推荐(0)
摘要:在统计分析中,有时候需要计算矩阵每列非0元素的个数,可以用以下方法:先用find找到每列不为0的元素index,然后用count计数。假设有矩阵A[M,N], 结果存在countZeroscountZeros=zeros(1,N);for i=1:M countZeros(i)=length(find(A(:,i)>0);end 阅读全文
posted @ 2013-10-15 09:05 huangshanshan 阅读(4570) 评论(0) 推荐(0)
摘要:在Java中,我们为了查找某个给定字符串中是否有需要查找的某个字符或者子字串、或者对字符串进行分割、或者对字符串一些字符进行替换/删除,一般会通过if-else、for 的配合使用来实现这些功能。如下所示:Java代码public class Test{ public static void main(String args[]) { String str="@Shang Hai Hong Qiao Fei Ji Chang"; boolean rs = false; for(int i=0;i.*|/匹配首尾空格的正则表达式:(^s*)|(s... 阅读全文
posted @ 2013-09-10 16:35 huangshanshan 阅读(296) 评论(0) 推荐(0)
摘要:is 运算符并不是说明对象是某种类型的一种方式,而是可以检查对象是否是给定的类型,或者是否可以转换为给定的类型,如果是,这个运算符就返回true。is 运算符的语法如下: is 这个表达式的结果如下:如果是一个类类型,而也是该类型,或者它继承了该类型,或者它封箱到该类型中,则结果为true。如果是一个接口类型,而也是该类型,或者它实现了该接口的类型,则结果为true。如果是一个值类型,而也是该类型,或者它被拆箱到该类型中,则结果为true。实例using System;using System.Collections.Generic;using System.Linq;using System 阅读全文
posted @ 2013-08-31 15:13 huangshanshan 阅读(2189) 评论(0) 推荐(0)
摘要:接口的实现分为:隐式实现和显式实现。如果类或者结构要实现的是单个接口,可以使用隐式实现,如果类或者结构继承了多个接口那么接口中相同名称成员就要显式实现。显示实现是通过使用接口的完全限定名来实现接口成员的。使用显式接口成员执行体通常有两个目的:1、因为显式接口成员执行体不能通过类的实例进行访问,这就可以从公有接口中把接口的实现部分单独分离开。如果一个类只在内部使用该接口,而类的使用者不会直接使用到该接口,这种显式接口成员执行体就可以起到作用。2、显式接口成员执行体避免了接口成员之间因为同名而发生混淆。如果一个类希望对名称和返回类型相同的接口成员采用不同的实现方式,这就必须要使用到显式接口成员执行 阅读全文
posted @ 2013-08-30 16:35 huangshanshan 阅读(242) 评论(0) 推荐(0)
摘要:本分步指南描述如何使用两个接口:IComparer和IComparable。在同一篇文章中讨论这些接口有两个原因。经常在一起,使用这些接口和接口类似 (并且有相似的名称),尽管它们用于不同用途。如果您有一个数组的类型 (如字符串或整数) 已经在支持IComparer,可以该数组进行排序而不提供对IComparer的任何显式引用。在这种情况下,数组中的元素强制转换为IComparer(Comparer.Default) 为您的默认实现。但是,如果您想要为您自定义的对象提供排序或比较功能,则必须实现一个或这两种接口。在这篇文章中引用以下.NET Framework 类库命名空间:System.Co 阅读全文
posted @ 2013-08-30 10:12 huangshanshan 阅读(1221) 评论(0) 推荐(1)
摘要:1:两者的设计理念不同:抽象类是一类事物的高度聚合,那么对于继承抽象类的子类来说,对于抽象类来说,属于“是”(is-a)的关系;而接口是定义行为规范,因此对于实现接口的子类来说,相对于接口来说,是“行为需要按照接口来完成”,是like-a的关系。2:抽象类表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。这弥补了类的多继承问题。成员方法3:抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分;只能够有静态的不能被修改的数据成员(也就是必须是static final的)。4:继承类对于两 阅读全文
posted @ 2013-08-29 15:12 huangshanshan 阅读(257) 评论(0) 推荐(0)
摘要:推荐一本书《Cracking the code interview》Now in the 5th edition, Cracking the Coding Interview gives you the interview preparation you need to get the top software developer jobs. This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 page 阅读全文
posted @ 2013-07-05 08:29 huangshanshan 阅读(591) 评论(0) 推荐(0)
摘要:这些概念以前老是犯糊涂,今天整清楚。摘要:P: Polynomial SolvableNP: Non-determinstic Polynomial Solvable0)词语解释:Polynomial 【数】多项式的; 由平方,立方等常数次方或者更小的运算符和+,-,*,/等构成的式子及其这种式子的和Non-deterministic: 非确定性的;Turing-machine: 图灵机; 英国数学家图灵提出的计算模型, 一个两端无限长的由小格子组成的带子,每个格子可以存储一个数,一个可以在带子左右移动的游标或者指针或者不如叫磁头(head), 磁头可读或修改格子里的数。 下面默认说的是确定性 阅读全文
posted @ 2013-06-18 09:44 huangshanshan 阅读(3324) 评论(0) 推荐(1)
摘要:冒泡排序procedure bubbleSort(A[1-n])Begin for i=1 to n-1 for j=n down to i+1 do if A[j-1]>A[j] then begin temp=A[j-1] A[j-1]=A[j] A[j]=temp end end插入排序void insertion_sort(void){ int i, j, key; for (j = 1; j = 0 && a[i] > key) { a[i+1] = a[i]; i--; } a[i+1] = key; }}归并排序#include #defin... 阅读全文
posted @ 2013-06-18 09:40 huangshanshan 阅读(273) 评论(0) 推荐(0)