自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Gale-Shapely 匹配算法

老师说要用mapGG这个算法的匹配思想很简单:就是男士从最喜欢的女士开始表白如果女士没有被配对,就在一起,如果女士配对了,看之前配对的男士和当前的男士哪个更优一直进行到所有人都匹配了为止package GSFianl;public class Quee { public Node head; public Node tail; public Node pointe

2017-03-21 21:36:50 1645

原创 第二章:寄存器(CPU的工作原理)

私以为,这本书要比《Computer Organization and Design》要更加思路清晰~ 前一章说的总线,相对于CPU 内部来说是外部总线。内部总线实现CPU内部各个器件之间的联系,外部总线实现CPU和主板上其他器件的联系。 在CPU中:运算器进行信息处理;寄存器进行信息储存;控制器控制各种器件进行工作;内部总线连接各种器件,在它们之间进行数据的传送。 CPU also ca

2017-03-14 16:26:17 747

原创 KM算法的实现

上一篇,我们已经找出了KMP算法对应的数组,这一篇我们将开始用next算法和KMP思想来完成程序:先贴上代码:package KMPAL;public class KMPAL { public int [] FindNext(String s) { int m=s.length(); int [] next=new int[m]; int k=-1

2017-03-14 16:24:15 2339

原创 循环双链表

package ShuangXiangLianBiao;public class ShuangXiangLianBiao { public Node head; public Node tail; public Node pointer; public int value; public int size=0; public ShuangXiangLianBiao()

2017-03-14 16:21:53 562

原创 坠小二叉堆的一些方法

•堆其实是一颗完全二叉树•任何一非叶子节点的关键字不大于或者不小于其左右子节点的关键字•如左图所示,为最小堆•堆的存储结构为顺序结构,以左图为例,其在顺序表中的存储序列为{15,18,30,45,35,36,48,93,53,72}Father= (Child-1)/2LeftChild=Father*2+1RightChild=Father*2+2

2017-03-14 16:21:22 339

原创 第一章:基础知识

8bit(比特)=1 byte (字节)=2word 1kB=1024B(B is byte)连接CPU和其他芯片的导线称为总线总线又分为: 地址总线,控制总线,数据总线 地址总线 一个CUP有N根地址总线,则可以说着这个CPU的地址总线的宽度为N。这样的CPU最多可以寻找2的N次方个内存单元。 数据总线 数据总线的宽度决定了CPU和外界的数据传输速度。8根数据总线一次可传送一

2017-03-11 10:01:56 474

原创 C语言的指针(我才不会说是为了理解mips语法)

奇葩的渣渣男子职业技术学校不教C教java,这就让我很尴尬了 说好的自学C然而学了好久还是只会a+b problem (╯▔皿▔)╯学计组不懂mips语法还有各种寄存器和内存的关系去问基友,基友让学C指针(逃得过初一逃不过十五QAQ) 什么是地址 如果在程序中定义了一个变量,编译系统会为该变量分配一块内存单元。在visual c++ 6.0中,一个字符型变量占用1个字节,一个基本整型变量在内

2017-03-06 00:57:48 1325 3

原创 Matlab基础(《精通MATLAB最优化计算》笔记)

命令窗口中常用的命令及功能 …是连行号(很贴心为强迫症设计的),分号“;”的作用是:指令执行结果不显示在屏幕上,但变量S将驻留在内存中MATLAB默认常量 字符串 字符串作为字符数组用单引号(‘)引用到程序中,还可以通过字符串运算组成复杂的字符串。字符串数值和数字数值之间可以进行转换,也可以执行字符串的有关操作元胞数组 元胞数组(cell array)与数字数组相似,以下标来区分,单元胞数组

2017-01-13 21:27:39 2251

原创 有向图单源最短路径Dijkstra算法(高配版)

这是Dijkstra算法的高配版(╯▔皿▔)╯其实就是可以打印出来所走的路径啦~找图上的某个点到其余点的最短路径Dijkstra算法的思想:1.将所有的点分为两种,走过的点和没走过的点    首先,原点标记为走过的第一个点,没走过的点的距离值为正无穷               看原点可以走到哪些点,将这些点的前驱改为原点2.找到下一个可以作为原点的点:   在没走

2016-12-22 00:03:40 1781

原创 二叉查找树的一些方法

package BinarySearchTreeHomework;public class Tree { Node root; Node pointer; public Tree() { } //按照输入的次序建立二叉查找树 public void BuildTree(int value) { Node node=new No

2016-12-13 00:03:04 392

原创 树的遍历(个人版)

因为学得太烂以至于忘掉了老师上课讲的具体步骤。。。/(ㄒoㄒ)/~~然后作业又要求写,只好自己写了最后发现除了层序遍历,其它几个都是用栈实现的还有:    今天才知道,原来    就算你新建了一个树类并赋值为原来的树,他喵的还是按传址处理原来的树类    于是就导致主方法写得很奇葩    好像整个过程就写得很奇葩好伐。。。┑( ̄Д  ̄)┍  packag

2016-12-04 16:16:30 550

原创 java 双链表,没有循环

就是那样写就好了,写清楚点今天才发现我是个智障Orzpackage DoubleLink;public class DoubleLink { public Node pointer; public Node head; public Node tail; public int size; public DoubleLink() { head=new Node();

2016-11-09 15:01:45 473

原创 KMP算法中的next数组

KMPnext数组

2016-11-08 16:21:45 491

原创 中序表达式转逆波兰表达式(你嫌弃波兰~抛弃疗窝喔~)个位数简化版

将一个中序表达式转化成为逆波兰表达式。       首先维护的是两个栈,我们这里暂且称为S1和S2,S1中的结果最后存的就是逆波兰表达式,S2中将用于暂时存放运算符并且在最终形成逆波兰表达式的时候,该栈是会清空的。下面我们看看怎样具体的形成逆波兰表达式。       在此首先定义一下运算符的优先级关系,从小到达排序,相同优先级没有用逗号隔开:(,+-,*\,负号,)。       从左

2016-11-06 16:31:55 982

原创 老鼠走迷宫(栈+纯暴力搜索)

思路:首先用二维数组建一个迷宫,0可以走,1不可以走,然后从第一个位置开始走,先向下走,在向右走,向左走,向上走,走过的位置标记一下,储存到栈里面,然后每到一个位置都判断一下它是不是还能继续向前走(不能向前走的话就取出栈顶元素并向后退一步),然后一直走直到能够走到终点。这种方法是暴力的深搜法,只能求到一种路径。package SearchRat;public class RatTes

2016-11-03 09:33:31 1116

原创 多项式的加减乘及求导(数组)

大体的思路就是在加减的时候开一个新的数组,然后新的数组是以指数的大小来排列的,将得到数存到新数组对应指数的位置上(当然数组是二维的)不过要注意:在乘的时候是指数相加不是指数相乘啊啊啊啊,我一定是傻了。package polynomial1;import java.util.Scanner;public class polynomialarray { public stat

2016-10-30 09:54:02 4131

原创 多项式加减乘求导(链表)(如果多项式不是升序的处理就太恶心了,所以是升序的,我就是这么懒。。。)

这个方法里面,用的那个AddPoly的用法可以get下,实验课老师写的太没有实用性了package polynolist;public class polynolist { public Node head; public Node tail; public Node pointer; public polynolist( ) { head=new Node();

2016-10-30 09:53:22 499

原创 队列写杨辉三角(拿两个队列写的。。。。

参考代码1:(用两个队列写的)package queue;public class queue { public int msize; public int front; public int rear; public int [] queue; public queue(int size) { msize=size; queue=new int[msize

2016-10-25 15:46:34 519

原创 MATLAB卷积

u=randn(1,40);%维度是1,长度是40nu=1:40;v=u(end:-1:1);%从u函数的end到1nv=-40:-1;w=conv(u,v);nw=nu(1)+nv(1):nu(end)+nv(end);%卷积长度stem(nw,w);

2016-10-19 23:51:35 1133

原创 折半插入排序

折半插入排序(binary insertion sort)是对插入排序算法的一种改进,所谓排序算法过程,就是不断的依次将元素插入前面已排好序的序列中。在将一个新元素插入已排好序的数组的过程中,寻找插入点时,将待插入区域的首元素设置为a[low],末元素设置为a[high],则轮比较时将待插入元素与a[m],其中m=(low+high)/2相比较,如果比参考元素小,则选择a[low]到a[m-1

2016-10-17 00:28:37 387

原创 java单链表的基本操作

java,数据结构,单链表

2016-10-05 19:21:21 825

原创 C语言笔记(《C与指针》)

第一章:快速入门1.数组参数是以引用(reference)形式进行传递的,也就是传址调用,而标量和常量则是按值(value)传递的。在函数中对标量参数的任何修改都会在函数返回时丢失,因此,被调用函数无法修改调用函数以传值形式传递给它的参数。然而,当被调用函数修改数组参数的其中一个元素时,调用函数所传递的数组就会被实际地修改第二章:基本概念1.标识符:变量、函数、类型等的名字。他们由大小写字母、数字和

2016-10-05 19:15:43 784

原创 Ipython基础

ipython基础

2016-08-29 21:28:49 1776

原创 重要的Python库(利用Python进行数据分析笔记)

NumPy(Numerical Python)快速高效的多维数组对象ndarray用于对数组执行元素级计算以及直接对数组执行数学运算的函数线性代数运算、傅里叶变换,以及随机数生成用于将C、C++,Fortran代码集成到Python的工具pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库灵活的数据处理功能。他提供了复杂精细的索引功能,以便更为便捷地完成重塑、切片和切块

2016-08-29 12:51:15 5832

转载 链表(算法分析与设计笔记)

链表中的数据元素的地址是任意的。 连表示一组数据元素的集合,期中每个数据元素都是一个结点,结点的数据部分称为结点的数据域。为了能对整个链表惊醒遍历或访问,链表的每个节点至少还应该包含一个指向它的直接后继元素在物理内存中的位置信息(通常称为指针域)。一个结点也包含一个指向他的直接前趋元素在物理内存中的位置信息。一个链表的最后一个结点的指针域可以为空,整个链表的结束。 仅有前驱指针或后继指针的结点构

2016-08-24 14:10:22 937

转载 表(算法分析与设计笔记)

1.线性表定义及特点对于非空的线性表而言,它具有如下4个特点: ①表中有且仅有一个开始节点 ②表中有且仅有一个终端节点 ③除了开始节点和终端节点外,其他每个元素前面均有且仅有一个称为直接前趋的数据元素,它的后面均有且仅有一个称为直接后继的数据元素 ④虽然不同线性表的数据元素可以是各种各样的,但是同一线性表中的数据元素必须具有相同的数据类型2.顺序表(1)线性表的顺序储存结构描述:typed

2016-08-22 18:23:08 479

原创 C++里数组的一些理解

C++里数组的一些理解一、一维数组作为函数的参数数组作为函数的参数,难点和重点都在于这两点: (1)理解函数参数两种传递方式:传值与传址之间的区别 (2)数组变量本身就是内存地址 关于函数的参数传递方式,传值方式下,传的只是实参的复制品(值一样);传址方式下,传的是实参本身二、一些字符串处理的函数1.strcpy(字符型数组1,字符型数组2)功能:将字符型数组(串)2拷贝到字符型数

2016-07-26 16:38:06 387

原创 向量唯一化

整理自学堂在线    邓俊辉老师的《数据结构与算法》http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240184X+sp/courseware/706d387daf2d4495aeb7fea3246a82ce/2634c8bbe1574bd8823dafc9e6ca63d2/有序向量唯一化低效算法:  原理:在有序向量

2016-07-13 10:39:28 1080

转载 c++向量

内容综合整理自:http://www.cnblogs.com/mr-wid/archive/2013/01/22/2871105.html向量(vector)

2016-07-11 16:10:21 3487

原创 动态规划

动态规划一、fib()递归 fib(n)=fib(n-1)+fib(n-2)  复杂度:T(0)=T(1)=1T(n)=T(n-1)+T(n-2)+1//1是那个加法令S(n)=(T(n)+1)/2   S(0)=1=fib(1)        S(1)=1=fib(2)S(n)=S(n-1)+S(n-2)=fib(n+1)T(n)=2*S(n)-1=2*fib(n

2016-07-09 18:29:29 370

原创 C++的s输出

C++的输出如果使用了控制符,在程序单位的开头除了要加iostream头文件外,还要加iomanip头文件下面通过一个例子来具体说明一下如何使用控制符setprecision()用来控制一共输出多少位数#include #includeusing namespace std;int main(){ double a=123.456789012345;

2016-07-09 15:16:20 716

原创 递归的典型示例

递归的几个典型示例一、递归选择排序选择排序法是找到列表最小的数并和第一个数交换。然后在剩余的数里找到最小的数,再将它和剩余列表中的第一个数交换,这样的过程一直进行下去,知道列表中仅剩一个数为止。    1.找出列表中最小数,然后将它与第一个数交换    2.忽略第一个数,对余下的较小一些的列表进行递归排序。 package RecursiveSelection

2016-07-01 15:54:09 1097

原创 递归基础篇

递归什么是递归?这个苯宝宝从初中的时候就纠结了。纠结啊纠结,纠结到某天突然灵光乍现:  直接递归:自己调用自己  间接递归:方法A调用方法B,接着B方法又调用A方法;当然可以有更多的方法参与进来。  For example:(来源:知乎     https://www.zhihu.com/question/20507130   Memoria)         假设你在

2016-07-01 09:48:50 355

转载 最大子序列和问题的四种算法

转自网易博客http://blog.163.com/lichunliang1988116@126/blog/static/2659944320124115795/       云栖社区https://yq.aliyun.com/articles/40323问题描述:给定(可能有负数)整数序列A1,A2,A3,...,An,求这个序列中子序列和的最大值。(为方便起见,如果所有整数均为

2016-06-29 18:50:02 1784

空空如也

空空如也

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

TA关注的人

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