To be or not to be, it's a question

To strive, to seek, to find, and not to yield

其他——人性的弱点

                                             人性的弱点 如果想要改变他人的行为以及态度,我们应该谨记下面的建议: 实事求是。一定不要做出你不能履行的承诺。忘记自己的私利,多关注对方的利益。 很清楚地知道你想让对方做些什么。 要站在对方的立场看待...

2018-09-16 11:15:06

阅读数 81

评论数 0

Git——Git基本概念进阶介绍(四)

Git——Git基本概念进阶介绍(四)   我们在上一篇文章中已经介绍了Git的一个典型应用,但我们忽略了其中的某些问题与Git的内部机制。下面就在介绍一些Git实现中的基本概念,它主要来自于《Git版本控制管理》第四章节。意料之中的,掌握典型使用总是比掌握设计原理简单的多~~~ 1.版本库...

2018-08-19 15:21:44

阅读数 104

评论数 0

Git——常用基本操作(三)

Git——常用基本操作   获取仓库 Git有两种方式可以获取Git仓库(repository):1.在本地现有目录或项目下将文件加入到Git中;2.从服务器上克隆一个已存在的Git仓库。 1.如果你想将一个本地目录或项目使用Git进行管理,需要在该根目录下使用如下命令: git in...

2018-08-11 17:12:41

阅读数 119

评论数 0

Git——使用初次配置(二)

Git——初配置 Git安装成功之后,我们还需要做一些配置,才能使用Git。这些配置只需要配置一次,程序升级时会保留配置信息;当然,我们也可以随时修改这些配置。 Git自带了一个Git config工具来帮助我们对Git进行配置。安装完Git之后,我们首先要做的第一件事是配置我们的用户名称和邮...

2018-08-05 17:56:07

阅读数 301

评论数 0

Git —— Git基础介绍(一)

Git —— Git基础介绍   由于工作变动,新公司使用了Git做的代码、项目版本控制(之前是SVN)。在平时自己的学习过程中,虽然也常常使用Git,但总是局限于一些简单的提交操作,对Git本身的一些设计原理、和其他常用的高级特性了解的不多,从而经常导致自己对Git有很多误解和误操作。最近在...

2018-08-04 22:14:51

阅读数 81

评论数 0

Algorithm——红黑树(十五)

Algorithm——红黑树《算法导论》介绍了红黑树这种重要的数据结构。红黑树是一颗二叉搜索树,它在每个节点上增加了一个存储位来表示节点的颜色(RED or BLACK)。通过对任何一条从根到叶子节点的简单路径上各个节点的颜色进行约束,红黑树确保没有一条路径会比其他路径长出2倍,因而是近似平衡的。...

2018-06-12 22:47:03

阅读数 82

评论数 0

Algorithm——二叉搜索树(十四)

Algorithm——二叉搜索树《算法导论》介绍了二叉搜索树的基本实现。二叉搜索树是一种常见的数据结构,它的定义是:“二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的...

2018-05-27 22:22:49

阅读数 111

评论数 0

Algorithm——简单数据结构之队列和链表(十三)

Algorithm——简单数据结构之队列和链表队列是一种先进先出策略,而链表中的各元素按线性顺序排列。数组的线性顺序是由数组的下标决定的,但链表的顺序是由各个对象里的指针决定的。队列有入队和出队操作,链表则有插入、删除、查询表中节点的操作。队列和双向链表的一种简单Java实现代码如下:/** *...

2018-05-13 22:34:11

阅读数 80

评论数 0

Algorithm——简单数据结构之栈(十二)

Algorithm——简单数据结构之栈栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出...

2018-05-10 22:27:11

阅读数 65

评论数 0

Algorithm——一般数组元素选择问题(十一)

Algorithm——一般数组元素选择问题 《算法导论》中引出了一个一般性的数组元素选择问题:即在一个元素各异的数组A中,选择其中第i小的元素(即如果i=1,则表明选择最小的那个元素)。 该算法的伪代码如下,它使用了之前介绍快速排序中的随机子数组划分方法: RANDOMIZED-SE...

2018-05-02 22:42:31

阅读数 84

评论数 0

Algorithm——快速排序(十)

Algorithm——快速排序 对于包含n个数的输入数组来说,快速排序是一种最坏情况实际复杂度为O(n^2)的排序算法。虽然最坏情况时间复杂度很差,但是快速排序通常是实际排序应用中最好的选择,因为它的平均性能非常好:它的期望时间复杂度是O(nlgn)。 (原址排序:在排序算法中,如果输入数组...

2018-05-01 22:09:12

阅读数 114

评论数 0

Algorithm——优先队列(九)

Algorithm——优先队列 堆除了可以实现前面所述的堆排序算法,还可以用来实现优先队列。优先队列是一种用来维护一组元素构成的集合S的数据结构,其中每一个元素都有一个相关的值,称为“关键字”。一个最大优先队列支持以下操作: INSERT(S, x):把元素x插入集合S中MAXIM...

2018-05-01 11:43:16

阅读数 82

评论数 0

Algorithm——堆排序算法(八)

Algorithm——堆排序算法在分析堆排序之前,我们先来回顾一些基本概念:在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。而完全二叉树:叶节点只能出现在最...

2018-05-01 09:33:31

阅读数 74

评论数 0

Algorithm ——数组打乱算法(七)

Algorithm ——数组打乱算法    Fisher–Yates shuffle 算法是一个非常高效又公平的随机排序算法,它的时间复杂度为O(n)。它的实现伪代码大致是: n = A.length; for i = 1 to n swap A[i] with A[RANDOM(...

2018-04-25 22:44:18

阅读数 161

评论数 0

Algorithm —— 矩阵乘法的Strassen算法(六)

Algorithm —— 矩阵乘法的Strassen算法 根据矩阵的乘法知识,两个NxN的矩阵A和B相乘的结果矩阵C的暴力算法是: /** * 一般的暴力矩阵乘法运算;矩阵A和B都是NxN的方阵 * * @param A * 参加运算的矩阵之一A * ...

2018-04-24 22:43:52

阅读数 329

评论数 0

Algorithm —— 最大子数组求解(五)

Algorithm —— 最大子数组求解《算法导论》中引出了一个求某个数组的和最大子数组问题:在原数组A中,求一个子数组a,它的各元素值的和是A的各个子数组中最大的;且子数组a的各元素下标值要连续。要注意的是,如果要求某个数组的最大子数组,则此数组中的值必须要包含负值;否则,求最大子数组是没有意义...

2018-04-15 22:11:29

阅读数 65

评论数 0

Algorithm —— 归并排序(四)

Algorithm —— 归并排序 在计算机科学中,分治法是建基于多项分支递归的一种很重要的算法范式。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。 这个技巧是很多高效算法的基础,如排序算法...

2018-04-15 16:50:51

阅读数 98

评论数 0

Algorithm —— 冒泡排序(三)

Algorithm -- 冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越大的元...

2018-04-15 13:57:28

阅读数 66

评论数 0

Algorithm ——选择排序(二)

Algorithm ——选择排序         选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法(比如序列[5, ...

2018-04-07 21:10:34

阅读数 42

评论数 0

Algorithm —— 插入排序(一)

Algorithm —— 插入排序         有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的...

2018-04-07 21:03:59

阅读数 45

评论数 0

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