跟小D每日学口语

文章分类 -  InterView

C语言中自定义函数中递归调用是怎样工作的?
摘要:这个程序时实现N的阶乘,但始终不明白ff();函数中else…两句的工作原理。请具体解释下面//两句。long ff(int n){long f;if(n<0) printf("n<0,input error");else if(n==0||n==1) f=1; //为什么f=1,就不再继续递归调用?else f=ff(n-1)*n;//这一步到底是怎么工作的?return... 阅读全文

posted @ 2010-08-04 21:13 简简单单幸福 阅读(2422) 评论(1) 推荐(0)

输出一个字符串的所有排列组合,有重复字符
摘要:static void Main(string[] args) { string str2 = ""; Method("1234", str2); Console.WriteLine(counter); Console.ReadKey(); } static void Method(string str,string str2) { if (str == null) return; if (str... 阅读全文

posted @ 2010-08-04 17:41 简简单单幸福 阅读(3697) 评论(0) 推荐(0)

C#反转单向链表
摘要:classClass1{[STAThread]staticvoidMain(string[]args){//初始化链表LineNotestartnote=newLineNote("1");LineNotenote=startnote;for(inti=2;i<=5;i++){note.Next=newLineNote(i.ToString());note=note.Next;}note=st... 阅读全文

posted @ 2010-08-04 15:33 简简单单幸福 阅读(535) 评论(0) 推荐(0)

快速排序的基本思想
摘要:快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一不部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 假设要排序的数组是A[1]……A[N],首先任意选取一个数据(通常选用第一个数据)作为关键数据,然后将所有比它的数都放到它前... 阅读全文

posted @ 2010-08-03 21:50 简简单单幸福 阅读(1569) 评论(0) 推荐(0)

XML Schema的基本语法(转)
摘要:XSDL(XML Schema定义语言)由元素、属性、命名空间和XML文档种的其他节点构成的。一、XSD中的元素XSD文档至少要包含:schema根元素和XML模式命名空间的定义、元素定义。1、schema根元素语法如下:<xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>…</xs... 阅读全文

posted @ 2010-08-03 15:40 简简单单幸福 阅读(10071) 评论(1) 推荐(0)

冒泡排序、插入排序、归并排序和基数排序 时间复杂度
摘要:选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法,冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。冒泡法: 这是最原始,也是众所周知的最慢的算法了。他的名字的由来因为它的工作看来象是冒泡: 复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。直接插入排序:O(n*n)选择排序:O(n*n)快速排序:平均时间复杂度log2(n)*n,所有内部排序方法中最高好的,大多数情... 阅读全文

posted @ 2010-07-30 16:52 简简单单幸福 阅读(4134) 评论(1) 推荐(1)

判断两个数组中是否存在相同的数字
摘要:判断两个数组中是否存在相同的数字给定两个排好序的数组,怎样高效得判断这两个数组中存在相同的数字?这个问题首先想到的是一个O(nlogn)的算法。就是任意挑选一个数组,遍历这个数组的所有元素,遍历过程中,在另一个数组中对第一个数组中的每个元素进行binary search。用C++实现代码如下:后来发现有一个 O(n)算法。因为两个数组都是排好序的。所以只要一次遍历就行了。首先设两个下标,分别初始化... 阅读全文

posted @ 2010-07-30 16:03 简简单单幸福 阅读(2365) 评论(0) 推荐(0)

二叉树的遍历:前序,中序,后序,层序--包括递归和非递归实现
摘要:二叉树的遍历:前序,中序,后序,层序--包括递归和非递归实现 /**//********************************************************************created:2005/12/30created:30:12:200510:39filename:bintree.hauthor:LiuQipurpose:二叉树的3种遍历方式(包括非递归实... 阅读全文

posted @ 2010-07-30 15:26 简简单单幸福 阅读(276) 评论(0) 推荐(0)

Delegates to the Event
摘要:Like many .NET platform developers who originally migrated from other tools and languages such as classic Visual Basic, much of what I've learned has been self-taught. And the interesting thing about ... 阅读全文

posted @ 2010-07-28 22:31 简简单单幸福 阅读(381) 评论(0) 推荐(0)

Main函数详解
摘要:“Hello World!”程序是程序员一直以来的一个浪漫约定,也是一个伟大的梦想--总有一天,出自人类之手的计算机会面对这个美丽的世界说一声“Hello World!”。它是学习一门新语言的一个很好的起点,我们就从这里开始,看下面例子: 1//HelloWorld.csbyCornfield,20012//cscHelloWorld.cs3usin... 阅读全文

posted @ 2010-07-15 14:08 简简单单幸福 阅读(1266) 评论(0) 推荐(0)

C# 压缩与解压字符串
摘要:2009-11-24 17:46/** 题目:压缩字符串。如“abbcccddddeef”,压缩成“a1b2c3d4e2f1”* 解题: 这个题目也是面试常见的题目。看似很简单,其实暗藏杀机。一般的想法就是,一边遍历,一边计数,然后将字符和计数器组合成新的字符串。* 这个想法没有错,但是结果有漏洞。* 等你写好算法,一般面试官会问以下两个问题中的一个... 阅读全文

posted @ 2010-07-14 12:32 简简单单幸福 阅读(8735) 评论(0) 推荐(1)

按单词反转字符串
摘要:按单词反转字符串并不是简单的字符串反转,而是按给定字符串里的单词将字符串倒转过来,就是说字符串里面的单词还是保持原来的顺序,这里的每个单词用空格分开。例如:Here is www.msjl.net经过反转后变为:www.msjl.net is Here如果只是简单的将所有字符串翻转的话,可以遍历字符串,将第一个字符和最后一个交换,第二个和倒数第二个交换,依次循环。其实按照单词反转的话可以在第一遍遍... 阅读全文

posted @ 2010-07-13 12:25 简简单单幸福 阅读(1858) 评论(0) 推荐(0)

C# interview questions--- 国外大公司c#技术面试必看
摘要:What’s the advantage of using System.Text.StringBuilder over System.String? StringBuilder is more efficient in the cases, where a lot of manipulation is done to the text. Strings are immutable, ... 阅读全文

posted @ 2010-07-07 17:23 简简单单幸福 阅读(414) 评论(0) 推荐(0)

什么是泛型(C#)
摘要:所谓泛型是指将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。一种类型占位符,或称之为类型参数。我们知道在一个方法中,一个变量的值可以作为参数,但其实这个变量的类型本身也可以作为参数。泛型允许我们在调用的时候再指定这个类型参数是什么。在.net中,泛型能够给我们带来的两个明显好处是——类型安全和减少装箱、拆箱。  例如:通常一个方法或过程的签名都是有明确的数据类... 阅读全文

posted @ 2010-02-26 11:25 简简单单幸福 阅读(410) 评论(0) 推荐(0)

.NET CLR基本术语
摘要:1. assembler和compilerassembler 汇编器,一般用于汇编语言,如本书的ILAsm。动词形式为assemble,翻译为汇编。compiler 编译器,一般用于高级语言,如C#等。动词形式为compile,翻译为编译。原书中,作者对这两个词是有所区分的。2.assembly 程序集很多人常常会与module(模块)混淆,以至于分不清哪一个才是真实存在的。没办法,Visual ... 阅读全文

posted @ 2010-02-25 21:41 简简单单幸福 阅读(364) 评论(0) 推荐(0)

查询表达式(LINQ)简介
摘要:LINQ是Language Integrated Query的简称,它是集成在.NET编程语言中的一种特性。已成为编程语言的一个组成部分,在编写程序时可以得到很好的编译时语法检查,丰富的元数据,智能感知、静态类型等强类型语言的好处。并且它同时还使得查询可以方便地对内存中的信息进行查询而不仅仅只是外部数据源。LINQ定义了一组标准查询操作符用于在所有基于.NET平台的编程语言中更加直接地声明跨越、过... 阅读全文

posted @ 2010-02-25 11:10 简简单单幸福 阅读(203) 评论(0) 推荐(0)

C# 3.0新语言特性和改进
摘要:体来说,Visual Studio 2008和.NET 3.5是建立在.NET2.0核心的基础之上,.NET2.0核心本身将不再变化(如果不了解.NET2.0的朋友,请参看MSDN或者一些经典的书籍),C# 3.0新语言特性在.NET2.0基础上进行了改进,这些改进的功能可以大大简化我们编写程序。关于C# 3.0新语言特性在博客园里的很多朋友都介绍了,我在这里简单介绍一下,记录自己所学的东西,也为... 阅读全文

posted @ 2010-02-25 11:08 简简单单幸福 阅读(226) 评论(0) 推荐(0)

“全局程序集缓存GAC”是什么概念?
摘要:GAC中的所有的Assembly都会存放在系统目录"%winroot%\assembly下面。放在系统目录下的好处之一是可以让系统管理员通过用户权限来控制Assembly的访问。 关于GAC本身,上面redcaff_l所引述的一段话正是MSDN中对GAC的定义。GAC全称是Global Assembly Cache,他的作用是可以存放一些有很多程序都要用到的公共Assembly,例如Syste... 阅读全文

posted @ 2010-02-25 10:58 简简单单幸福 阅读(697) 评论(0) 推荐(0)

C#、.Net经典33条面试题目及答案
摘要:本文集中了多条常见的C#、.Net经典面试题目例如“.NET中类和结构的区别”、“ASP.NET页面之间传递值的几种方式?”,并简明扼要的给出了答案,希望能对学习C#、.Net的读者有所帮助。   1, 请你说说.NET中类和结构的区别?   答:结构和类具有大体的语法,但是结构受到的限制比类要多。结构不能申明有默认的构造函数,为结构的副本是又编译器... 阅读全文

posted @ 2010-02-04 22:06 简简单单幸福 阅读(190) 评论(0) 推荐(0)

如何应对面试中的偏题
摘要:偏题分析举例:,(一)如果我们公司这次没有录取你,但过一段,被录取的人中有没能渡过试用期的,腾出位置来,再通知你,你还会再来吗?,(二)如果公司给你的工资标准,没有达到你简历上的工资要求,你还来我们公司吗?,(三)你在公司里工作,如果同办公室里的一个人,能力没有你强,但工资却高于你,你会不会有想法,心理能平衡吗?, 面试如高考,精心准备了好长一段时间,各种面试问题反复练习,通读熟背。最后,充满自信... 阅读全文

posted @ 2009-12-08 15:32 简简单单幸福 阅读(204) 评论(0) 推荐(0)