自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

翻译 软件工程第二篇博客(“相等”)

介绍在之前的阅读材料中,我们已经描述了抽象数据类型(ADT)是由它对应的操作而非内部表示决定的。而ADT中的抽象函数解释了该类型是如何将内部表示映射为使用者理解的抽象数据的,我们也看到了抽象函数决定了我们应该如何实现ADT的各个操作。在这篇阅读中我们会聚焦于如何定义ADT的相等:抽象函数会给我们对相等操作一个清晰的定义。在现实物理世界中,任何对象都是不相等的——在某些层次,即使是两片雪花也是不同的,即使这种不同只是在空间中的位置(严格一点的话,在原子层次不能这么说,不过对于现实生活中“大”的对象

2020-05-22 19:53:51 447

翻译 软件构造第一篇博客(“可变形与不可变性”)

回忆之前我们讨论过的“用快照图理解值与对象”(译者注:“Java基础”),有一些对象的内容是不变的(immutable):一旦它们被创建,它们总是表示相同的值。另一些对象是可变的(mutable):它们有改变内部值对应的方法。String就是不变对象的一个例子,一个String对象总是表示相同的字符串。而StringBuilder则是可变的,它有对应的方法来删除、插入、替换字符串内部的字符,等等。因为String是不变的,一旦被创建,一个String对象总是有一样的值。为了在一个...

2020-05-22 19:44:33 615

原创 我是为了个勋章写的这篇blog

哈哈哈

2019-10-24 20:10:21 159

原创 pycharm连接不上python console问题

转载至:https://www.cnblogs.com/xfzhang/p/10629787.html

2019-08-10 21:19:43 5102

原创 我用Java学数据结构之线段树底层实现 ^-^

线段树(SegmentTree)也叫区间树最经典的线段树问题:区间染色,区间查询比如说统计某电商网站2017年的消费最高的,这个问题其实是简单的但是我先看的是2017年至现在的消费情况,它的数据一直是变得,那么线段树是一个不错的选择它的数据是不断更新的,不断查询的,也可以使用数组实现我们不考虑在线段树中添加或删除元素,我们所解决的问题是区间本身是固定的,只是区间中的元素可...

2019-06-11 22:46:04 188

原创 我用Java学数据结构之最大堆与优先队列底层实现 ^-^

首先得了解下优先队列和普通的队列的区别:普通队列:先进先出,后进后出优先队列:出队顺序和入队顺序无关,与优先级相关最典型的一个例子:在操作系统中进行任务的调度,操作系统会为这些任务分配资源和cpu的时间片,具体分配资源的时候,操作系统就要看各个任务的优先级,动态的选择优先级最高的任务执行对于优先队队列的实现依旧有多种底层,但是在这里采用二叉堆为底层二叉堆的性质:...

2019-06-02 17:04:52 426 1

原创 我用Java学数据结构之映射Map底层实现 ^_^

从一个值对应一个值的这种关系就叫映射首先关于映射,我们主要关心的是一一对应的关系,就比如初高中所学的函数,在生活中也比较常见一般都是一对一对出现的,为什么会出现这种数据结构呢,以为很多时候我们要根据键(key)来查找值(Value)首先定义Map的接口(老规矩,依旧采用泛型做为底层实现)public interface Map<K, V> { void...

2019-06-01 20:07:30 173

原创 我用Java学数据结构之二分搜索树底层实现 ^-^

动态数据结构 是一颗二叉树 二分搜索树的每个节点的值都大于其左子树的所有节点的值 每个节点的值都小于其右子树的所有节点的值 每一颗子树也是二分搜索树 存储的元素必须有可比较性, Java中的话就要求二分搜索树保存的数据类型要实现Comparable接口, 或者使用额外的比较器实现 一般二分搜索树不包含重复元素, 当然也可以定义包含重复元素的二分搜索树 如果想要包含重复元素...

2019-05-21 21:40:59 233

原创 我用Java学数据结构之链表底层实现

本节总结下链表的底层实现,与动态数组的方法基本一致,可以在其做为底层的情况下实现链栈,链队等数据结构为了后续操作方面起见,设置了虚拟头结点,在removeFirst以及addLast操作上逻辑比较好写采用私有内部类Node为基本存储结构,内含多种构造方法,使用起来得心应手 private class Node { public E e; p...

2019-05-21 08:34:48 342

原创 我用Java学数据结构之循环队列底层实现

循环队列的几个特性: 循环队列是对数组队列的进一步优化, 具体表现为 , 当移除某一元素时, 队列中的首元素索引 +1, 而不是将元素整体先前挪动一位 当尾元素至容器尾端时 , 会将新元素保存至队列首段的曾被移除过的索引处保存. 首元素索引 : front ; 尾元素索引+1 : tail ,也就是tail指向最后一个队尾的下一个位置; 在队列设计...

2019-05-20 23:21:29 309

原创 我用Java学数据结构之队列底层实现 ^-^

队列同样是数据结构中最重要的之一啦,像树的层序遍历啥的,这里的接口同样与java内置队列的接口相同public interface Queue<E> { int getSize(); void enqueue(E e); E dequeue(); boolean isEmpty(); E getFront();}这里仍...

2019-05-20 22:19:17 658

原创 我用Java学数据结构之栈底层实现

栈和队列在很多地方都有应用,比如非递归前序遍历二叉树,还有做题的时候会经常用到首先定义栈的接口,与java内置的栈接口相同,依然使用泛型实现public interface Stack<E> { int getSize(); boolean isEmpty(); void push(E e); E pop(); E p...

2019-05-20 21:57:44 592

原创 我用Java学数据结构之动态数组底层实现 ^-^

动态数组,见名知意,不像静态数组那样,一旦开辟了空间,就不能再进行增加或者删除操作,动态数组可以在数组存储满的时候自动扩容,数组中存储元素过少的时候自动缩容。在这里,为了使用方便起见,使用了泛型 /** * 动态数组中的元素存储于data中 */ private E[] data; /** * size记录数组中的元素个数 ...

2019-05-20 21:45:15 134

原创 入门SpringBoot之几种配置注入方式

SpringBoot比SpringMVC在依赖包的管理上更加省时省力配置注入也和之前的SpringMVC方法有所不同示例:在配置文件Myconfig中获取到JDBC的连接配置信息1.首先使用IDEA创建一个Maven的项目在pom.xml文件中添加这些简单的配置即可,如果有额外需要可以去Maven Repository的网站上去获取配置信息:https://mvnrepository.c...

2019-04-25 21:19:25 8721

原创 理解java中集合类

集合做为一个工具类,日常撸代码的时候用的还是挺多的,尤其是做一些比赛题啥的,和String类都挺重要的 集合类的框架体系图 常用的一般有ArrayList,LinkedList,HashSet,HashMap集合特性>任何一个集合都可以使用Iterator进行迭代遍历,像List这种顺序存储的集合是含有get()方法,Set与Map就没有,要想进行遍历,只能...

2019-04-21 17:49:43 154 1

原创 谁是窃贼(逻辑推理题)

公安人员审问四名窃贼嫌疑犯。已知,这四人当中仅有一名是窃贼,还知道这四人中每人要么是诚实的,要么总是说谎。在回答公安人员的问题中:甲说:“乙没有偷,是丁偷的。”乙说:“我没有偷,是丙偷的。”丙说:“甲没有偷,是乙偷的。”丁说:“我没有偷”请根据这四人的谈话判断谁是盗窃者首先我们假设甲是贼:此时甲说:乙没有偷,这句为真,但是丁偷的是假话。那么,甲说的话里边,就一句为真一句为假...

2018-11-21 11:34:28 15208 1

原创 c语言实现多项式加减法(两种方法)

多项式的每一项用一个结构体存储    在这里主要介绍两种方法实现加减法  (有什么建议想法 评论哦) 第一种方法是将f2多项式中的每一项分别和f1中的每一项比对      如果f1中有和f2当前一项指数相同的项    将系数相加    如果没有    将这一项插入到f1的最前面     继续判断f2的下一项void addPolyn(Test *f1,Test *f2) { ...

2018-11-17 21:26:11 14834 3

原创 顺序栈的几个基本操作 压栈 弹出 数制转换 等等

// 顺序栈.cpp: 定义控制台应用程序的入口点。//#include "stdafx.h"#include"stdlib.h"#define STACK_INIT_SIZE 100#define STACKINCREAMENT 10typedef int elem;typedef struct {    elem *base;    elem *top;    ...

2018-11-01 19:07:42 405

原创 单链表的一些基本操作 排序 查找 删除 等等

 #include&lt;stdafx.h&gt;#include&lt;stdlib.h&gt;#define length sizeof(struct node)typedef struct node{    int data;    struct node *next;} Test;Test *head, *p, *q, *r;//定义遍历指针//带有头结点的链...

2018-10-31 22:12:12 205

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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