C#
文章平均质量分 72
璞瑜无文
本人就职于外资企业,主要从事微软Dynamic CRM等微软产品的相关开发,熟练掌握C#,Web相关开发,以及Linux相关基础。
展开
-
C# OOP模型(传说中的继承封装多态)
继承封装多态原创 2016-08-18 13:23:00 · 388 阅读 · 0 评论 -
数据结构实例<九>(IsHappy 快乐数)容易
题目:写一个算法来判断一个数是不是"快乐数"。一个数是不是快乐是这么定义的:对于一个正整数,每一次将该数替换为他每个位置上的数字的平方和,然后重复这个过程直到这个数变为1,或是无限循环但始终变不到1。如果可以变为1,那么这个数就是快乐数。样例19 就是一个快乐数。1^2 + 9^2 = 828^2 + 2^2 = 686^2 + 8^2 = 1001^2原创 2017-03-19 10:42:02 · 503 阅读 · 0 评论 -
数据结构实例<八>(IsUgly 丑数)容易
题目:写一个程序来检测一个整数是不是丑数。丑数的定义是,只包含质因子 2, 3, 5 的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。Code:*求质因子有且只包含 2 3 5.反言之:该数,有且只能被 2 3 5 整除,即求模运算。继而进行整除进入下一循环。*最终如果到最后值除尽恰好等于1,说明该数质因子只为2 3 5返回T原创 2017-03-19 09:17:35 · 423 阅读 · 0 评论 -
数据结构实例<七>(Left-Pad 左填充)容易
题目:实现一个leftpad库,如果不知道什么是leftpad如下所示:leftpad("foo", 5)>> " foo"leftpad("foobar", 6)>> "foobar"leftpad("1", 2, "0")>> "01"*实现多重载leftpad() ,表示两种不同需求的展示。*问题的关键点 长度 和 附加Str的组装。原创 2017-03-18 16:03:05 · 810 阅读 · 0 评论 -
C#设计模式<二>工厂模式
接上节:单例设计模式的关键点一.私有构造函数二.声明静态单例对象三.构造单例对象之前要加锁(lock一个静态的object对象,某些语言可以声明同步执行,其实是一个目的)四.需要两次检测单例实例是否已经被构造,分别在锁之前和锁之后工厂模式经典模式之一,其核心功能是根据“需求”生产“产品”,设计模式的核心是解耦吗?工厂模式就是为了解耦“需求”和“产原创 2017-03-17 14:56:27 · 545 阅读 · 0 评论 -
从MVC实战学习网站编写(二)Model及View实现
前情提要:上一节我们大致把MVC的主要结构和需要用到的知识罗列了一些。本节我们将对利用Razor语法来实现一个基本的表单静态显示,以初步了解MVC程序是如何运行的。MVC的构建:我们在写之前要了解我们具体实现的业务逻辑是一个表单提交,今天我们只讲前台显示不涉及后台数据处理。那就很简单了,前台显示首先我们需要用到JQuery库,BootStrap库,以及页面上所引用的Model数据模型,原创 2016-08-23 11:26:23 · 700 阅读 · 0 评论 -
数据结构实例<二>(斐波那契数列)入门
题目:查找斐波纳契数列中第 N 个数。所谓的斐波纳契数列是指:前2个数是 0 和 1 。第 i 个数是第 i-1 个数和第i-2 个数的和。斐波纳契数列的前10个数字是:0, 1, 1, 2, 3, 5, 8, 13, 21, 34 ...原创 2017-02-16 09:04:29 · 501 阅读 · 0 评论 -
数据结构实例<一>(数组排序)入门
题目:给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。*本题讨论的是升序排序,降序以此类推冒泡: int temp = 0; for (int i = 0; i < A.Length - 1; i++) { for (int j = 0; j原创 2017-02-15 11:46:52 · 378 阅读 · 0 评论 -
数据结构实例<五>(Intersection)容易
题目:计算两个数组的交集:原创 2017-02-20 10:42:00 · 598 阅读 · 0 评论 -
C#单元测试首测
题记:写了这么久代码,从来没写过单元测试。刚开始只是看结果(黑盒测试),主观感受就是对与否。找不到问题所在。后来渐渐可以学会断点调试以及Debug单步调试。查找问题不会束手无策更加精准。再后来听说过自动化测试以及异常处理。原来还可以自己写个Tool和查看Log捕获问题。现在又学到了一个新东西单元测试,避免了编码过程中容易忽略的小问题。单元测试(unit testing):是指对原创 2017-03-02 10:46:17 · 275 阅读 · 0 评论 -
数据结构实例<六>(移动“零”)容易
题目:给一个数组 nums 写一个函数将 0 移动到数组的最后面,非零元素保持原数组的顺序给出 nums = [0, 1, 0, 3, 12], 调用函数之后, nums = [1, 3, 12, 0, 0].Function:public class MoveZero { public LinkedList MoveZeroes(int[] nu原创 2017-03-02 10:33:50 · 254 阅读 · 0 评论 -
数据结构实例<四>(Add Digits)容易
题目:Add Digits:Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.样例Given num = 38.The process is like: 3 + 8 = 11, 1 + 1 = 2. Since 2 h原创 2017-02-18 10:45:40 · 324 阅读 · 0 评论 -
数据结构实例<三>(匹配链表所有元素删除后并返回新的链表)入门
题目:删除链表中等于给定值val的所有节点。Example:给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1->2->4->5。Function 如下:public static void RemoveElements(LinkList head, int val) {原创 2017-02-17 11:23:50 · 453 阅读 · 0 评论 -
C# 数组集合<四> 二元查找树(非递归遍历)
非递归遍历:先根遍历public void StackPreOrder(Node head) { Console.WriteLine("Pre-Order: "); if (head !=null) { Stack stack = new Stack();原创 2017-01-17 11:24:21 · 410 阅读 · 0 评论 -
C# 数组集合<四> 二元查找树
二元查找树: 它首先要是一棵二元树,在这基础上它或者是一棵空树;或者是具有下列性质的二元树: (1)若左子树不空,则左子树上所有结点的值均小于它的父结点的值; (2)若右子树不空,则右子树上所有结点的值均大于等于它的根结点的值; (3)左、右子树也分别为二元查找树节点类:public class Node { public int Dat原创 2017-01-17 09:51:39 · 371 阅读 · 0 评论 -
C# 数组集合<三> 顺序栈和链栈
概念:栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。我们通常说堆栈那么其实他俩并非一个概念,我们从编译程序占用的内原创 2016-09-28 13:27:20 · 1378 阅读 · 0 评论 -
C# 数组集合<二> 双向链表和双向循环链表
前情提示:上一篇总结了数据结构的基本概念,以及在C#下的一些基本实现Code。从这篇之后难度加大,代码量也增大了。分卷了。这一篇主要讲述双向链表和双向循环链表。双向链表:双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。双向原创 2016-09-22 16:15:31 · 1741 阅读 · 2 评论 -
C# 数组集合 <一>基本概念(Array&ArrayList&List<T>&SortList&LinkList的实现Code)
背景介绍:俗话说得好,无招胜有招!作为一名肩负着科技创新使命的我们也得练好基本功。那么当我们拥有什么条件才会无视语言的限制,看整个代码犹如一盘棋,一招天地大同顷刻间让整个棋盘活了起来。扯了这么多其实就是想说我们得学会一种思想,一种逻辑,考虑问题或者完成业务的一种模式,而这个关键恰恰就是算法,数据结构。今天我来总结一下以C#为基础来实现数据和集合。首先我们先要了解数据结构的一个概念三种结构。原创 2016-09-07 16:51:38 · 1203 阅读 · 0 评论 -
C#设计模式<一>单例模式
前言:《GOF23种设计模式》是我持续性学习的一本书。由于一直处于穿插式学习。(数据结构,设计模式,Web开发)有点儿庞杂,一方面要学习,一方面还要完成本职工作。鉴于水平有限,只能这样了。单例模式:我个人理解为:在面向对象编程中,实现一个唯一的对象。官方解释为:一个类只能有一个实例,并提供一个全局访问点。具体实现如下所示:public class Singleto原创 2017-03-06 11:39:54 · 222 阅读 · 0 评论