随笔分类 - C#
不想细分什么1.1 2.0 3.0的
都一起把
摘要:引子: TomiWong 园友发了一个帖子 有多少人能分得清值类型和引用类型? 问题:“class、object、string、int、bool、byte、interface、delegate、str...
阅读全文
摘要:这是一个双王者的时代,两个主流开发语言并存的时代。10多年前是没有的,希望10多年后也早日结束
考虑到IT领域和全世界对微软的偏见,一个刚刚从2002年正式起步,起步时已经落后对手至少2年推广时间的语言,他目前所获得的成就至少不能用失败两字来总结。
而身为拥有Sun这种技术大牛公司、IBM这种神一样的企业、全世界最广泛的狂热开源社区的智力支持、宗教一般自由精神的标榜仿佛拥有道德至高点般的地位。Java如今的成就也似乎不能用彻底成功来形容。
阅读全文
摘要:elite_lcf 写了一篇 控制台输出螺旋型数字 的文章。刚好我记得在国家程序员资格考试的有关书籍里见过,并且当时曾试图写过一种不常规的实现。
在回帖中 AutumnWinter 给了个说法,时间复杂度应该不会小于O(n^2)。
这下让我比较有兴趣,因为传统的解法的确需要两重循环,而且无法再少了。
但是我的思路是另走捷径。通过一天的努力(周末泡汤了),终于写出来了。
不过实际测试的时候,在小数据量情况下没有优势,一定要在n>1400的时候才开始有几次领先,越后面领先越大
阅读全文
摘要: 万仓一黍 同学发了一些文章
一道算法题,看看大家的思路
一道算法题,看看大家的思路(续)
很早就有去做做的想法,可是一直没动手
今天花了点时间搞搞
结果如下:
核心部分
阅读全文
摘要:本篇主要介绍如何通过C#代码来获得Windows操作系统的桌面位图。主要方式有两个:1、C#类库 2、Windows32API 以及鼠标位置和形状的捕捉
阅读全文
摘要:夏小冰的代码,运算时1122, 18, 21,123, 98都有正确结果,但是100011,121989999的答案是错的.《编程之美》
这个是winzheng的标题,不过从他的代码里只能感受到对CPU无情的蹂躏。
以至于
如果数据更大,例如:121989999991999,花了好几分钟也没算出来,这个时候真的需要考虑时间复杂度等问题了。
解决这个问题只要把计算机当人看就可以了
阅读全文
摘要:懒人王给了个有关测试的东西
没时间搞测试,仅仅搞了个游戏实现出来。希望别让懒人王测出太多毛病。呵呵
警告一下所有同行哦,程序功能多了以后,会有很多异常参数和情况的,不能太想当然就去写代码的。
我这个程序主要是在部分位置尝试使用了Linq技术
另外一个闪光点么就是在10个数字里取4个的运算是我自己发明的,在可抽取状态在整型数的可用范围内很管用的。
如果有啥意见尽管提哦,让我好提高点水平。
阅读全文
摘要:今天搞一个使用对象的解。
坚持用对象来解决问题的一个原因,是想证明使用面向对象不是造成算法速度慢的根本原因。
例如,我这个面向对象的解,其运行速度似乎很牛的说,至少比我自己的非递归解要快10%。
核心类Item,代表算式中的每个项。
派生类Tail,是最末尾的一项。
主控类Splitter,负责构造以及输出。
阅读全文
摘要:输出所有将sum拆分为n个正整数之和,其中每个正整数k都满足: min = k = max。
这n个正整数之间可以重复,不过由于加法交换率的作用,1 + 2和2 + 1便算是重复的拆分了
核心思想:
使用一个工作数组来记录每个位置的相关状态
1、最小分配数
2、最大分配数
3、剩余分配数
在循环嵌套中使用一个标志量来指向最靠右的未达到该位置最大分配数的下标
使用这个标志量让循环反复多次执行,实现迭代的效果
阅读全文
摘要:我的这个代码主要思路
1、在原有数组外围增加一圈0,这样就降低了统计时候的复杂度
2、将一维字符串数组转换为一个字符串,其实这也是增加0的副产品,如果有朋友能维持一维字符串数组并增加0请告知一下
3、在最后的一维数组中直接用坐标计算方式算出当前位置的相关8个下标并直接计算
4、累加后统一减384,而不是每次减'0'字符
基本就这些特色了。
自己觉得比较有意思的特色是搞成一维数组来解决,呵呵。 其实看看大家的东西都能有不少收获的
阅读全文
摘要:经典查表法
内部实现一个失败时返回偏大值的二分查找
475574的10W次查找耗时10毫秒
仅供玩耍,不过其实是很多数学库内部的处理方式。我不相信Math.Sin会去进行实际的运算。
阅读全文
摘要:都已经快2010年了,难道编程序必须要从机器码开始学吗?
的确,我不否认算法的重要,我不否认任何一门计算机基础课程的重要性
但是成为一个合格的武林人士,不是必须学会紫阳神功的
为什么没有任何一个人的解法是基于面向对象思想的?
难道用了C#、Java就算面向对象了?
我写了一个面向对象的解,很容易理解的
运行效率比我看到的eaglet的要慢50%左右,至少证明不会慢太多。比不合理的非对象算法要快很多了。
但是软件工程仅仅需要运行效率吗?难道忘记了软件危机是怎么产生的吗?
同时另外写了一个非面向对象的,运行时间是eaglet的66%左右,仅exe提供。
阅读全文
摘要:受园子里博友的激发《C#实现扫雷出炉》
花了2天时间写了如附件内的的东西
主要是感觉magicdlf 写的代码没有体现出C#的特点。类似使用各种算法的解,其实完全可以套到C里面去,仅仅是用C#做了界面而已
另外magicdlf博友的项目里,基本就没有特别仔细得去了解挖雷的项目需求,仅靠自己的记忆来做项目
这也是让我比较感受深的一个问题。
项目的前期需求分析太重要了!!!
因此,本项目主要想体现面向对象的特性,不使用FloodFill算法。以及希望完美模拟WinMine。
阅读全文
摘要:在 ADO.Net 2.0 的中小型应用中,数据层代码是否还有存在的必要?
阅读全文