![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 76
dly215011
这个作者很懒,什么都没留下…
展开
-
数据结构之顺序表Java实现
元素默认为char类型,代码中有详细注释,可编译运行接口:package linearList;public interface ILiist { public void clear();// 置空表 public boolean isEmpty();// 是否为空 public int length();// 数据元素个数 public char get(int i)原创 2016-10-10 20:38:18 · 1162 阅读 · 0 评论 -
java实现优先级队列
优先级队列是一种带有优先级的队列,我们约定关键字最小的数据元素具有最高的优先级,且总是排在队首。在优先级中的数据元素也不仅仅限制在队尾进行,而是顺序插入到合适的位置,以确保队列的优先级顺序。用到了之前写的结点Node类队列接口:package queueTest;public interface IQueue { public void clear(); public b原创 2016-10-31 20:48:00 · 787 阅读 · 0 评论 -
Java队列递归求解素数环问题
思路:1.创建顺序表SqList的对象L,用于存放素数环中的数据元素;创建链队列LinkQueue对象Q,用于存放还未加入到素数环中的元素。2.初始化顺序表L和队列Q:将1加入到顺序表L中,将2~n的自然数全部加到Q队列中。3.递归,将出队的队首元素p与素数环最后一个数据元素q相加,若两数之和是素数而且p不是队尾元素,则将p加入到素数环中;否则说明p暂时无法原创 2016-10-31 19:16:26 · 3318 阅读 · 0 评论 -
数据结构之循环双向链表java实现
package linearList;import java.util.Scanner;import sun.net.www.content.text.plain;import sun.rmi.runtime.Log;public class DuLinkList implements ILiist{ public DuLNode head; //双向循环链表的头结点 publ原创 2016-10-18 21:35:03 · 1183 阅读 · 0 评论 -
Java链表实现删除重复结点以及合并链表(非递减)
Java链表已在上一篇文章写出,不再赘述1.删除重复结点:1)思路:从单链表的首结点开始依次将单链表中每一个结点与他的后面的所有节点相比较,若遇到相等的,则将此结点从链表中删除,当对每个结点都处理完后,算法结束2)实现:package test;import linkList.LinkList;import linkList.Node;public class D原创 2016-10-17 20:10:32 · 932 阅读 · 0 评论 -
数据结构之链表Java实现
接口:package linearList;import org.omg.CORBA.OBJ_ADAPTER;public interface ILiist { public void clear();// 置空表 public boolean isEmpty();// 是否为空 public int length();// 数据元素个数 public Object ge原创 2016-10-11 23:19:41 · 607 阅读 · 0 评论 -
数据结构链队列java实现
相对比较简单,用到了之前写过的结点类,包含数据域和指针域代码如下:接口:package queueTest;public interface IQueue { public void clear(); public boolean isEmpty(); public int length(); public Object peek();// 取队首元素 publi原创 2016-10-26 12:15:29 · 1051 阅读 · 0 评论 -
数据结构循环队列Java实现
顺序队列实行先进先出的原则,需要加上front和rear两个变量分别指示队首和队尾在数组中的位置,初值为0。在非空队列中,front指向队首元素,rear指向队尾元素的下一个存储位置。由于顺序队列中会产生假溢出的情形,例如一个有6个存储空间的队列存满,并且出队2次之后,我们无法在第七个存储空间继续入队,但实际上此队列在前方仍然有两个空余的存储空间。解决这个问题,最好原创 2016-10-26 12:12:58 · 2220 阅读 · 0 评论 -
Java链栈实现两个大数加法
整数是有上限的,所谓大数,是指超过整数最大上限的数,例如18452545389943209751345473,它是无法用整数变量来保存的。为解决两个大数求和问题,可以把两个加数看成是数字字符串。由于最先写的高位反而最后运算,满足栈先进后出的特性,因此选择用栈来解决这个问题。操作步骤如下:1)将两个加数的相应位从高位到低位依次压入栈sA和sB中。2)若两个加数栈都原创 2016-10-25 17:41:59 · 900 阅读 · 0 评论 -
Java栈实现判断分隔符是否匹配
思路:一个匹配的分隔符可以被其他分隔符分开,即分隔符允许嵌套。因此,一个给定的右分隔符只有在其前面的所有右分隔符都匹配上之后才能进行匹配。可见,最先进的左分隔符在最后才能进行匹配,与栈式存储结构先进后出的特性吻合,故采用栈。算法:从左到右扫描语句,每次读取一个字符,若发现他是左字符,则压入栈中;当读到一个右字符,则弹出栈顶的左分隔符,并且查看它是否和右分隔符相匹配,原创 2016-10-23 18:32:30 · 1635 阅读 · 0 评论 -
Java实现链栈
用到了之前链表写的结点类,可以在前面的文章中找到,只是定义了数据域和指针域,这里不再写了接口类:package com.stack;import sun.reflect.generics.tree.VoidDescriptor;public interface IStack { public void clear(); public boolean isEmpty(); pu原创 2016-10-22 18:33:42 · 595 阅读 · 0 评论 -
Java实现顺序栈
接口类:package com.stack;import sun.reflect.generics.tree.VoidDescriptor;public interface IStack { public void clear(); public boolean isEmpty(); public int length(); public Object peek();//取栈顶原创 2016-10-22 18:30:53 · 1478 阅读 · 0 评论 -
Java链表练习实现一元多项式的加法
链表的实现在之前写过了,就不再写了将链表的数据域赋值为多项式结点类多项式结点类:package polynomialOfOneIndeterminate;public class PolynNode { public double coef;//系数 public int expn;//指数 public PolynNode(double coef,int ex原创 2016-10-21 22:56:09 · 3346 阅读 · 2 评论 -
java栈+队列实现简单的停车场管理问题
问题描述设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车场为它让路原创 2016-11-02 11:58:20 · 7941 阅读 · 2 评论