
Java 数据结构和算法
文章平均质量分 64
有人说数据结构是通向各种实用算法的基石,在我看来,一个程序员的数据结构和算法的掌握程度可以作为评判其内力是否深厚的标准。
Mettee
https://www.redian.me/
展开
-
Java 数据结构和算法 链表
链表 本章将学习一种全新的数据结构,链表。 链表的 机制灵活,用途广泛,它适用于许多通用的数据库,它也可以取代数组,作为其他存储结构的基础,例如栈、队列等等。除非需要频繁的通过下标随机访问各个数据,否则在很多实用数组的地方都可以用链表代替。 链结点 在链表中,每个数据项被包含在链结点中,一个链结点是某个类的对象,这个类可以叫做 Link ,因为一个链表中有许多类似的链结点,所有有必要用原创 2017-05-25 10:48:47 · 713 阅读 · 0 评论 -
Java 数据结构和算法 计算表达式问题
上一节介绍了栈和队列两种数据结构,这里接介绍一个栈和队列的综合应用:计算表达式 计算表达式 以前做小练习的时候也做过小的计算器,对表达式的计算是很重要也是很头疼的一部分,这里就来看看如何使用栈和队列来实现。 计算表达式分两步: 将算术表达式转换为后缀表达式。 计算后缀表达式的值。 中缀表达式 后缀表达式 A+B-C AB+C- A*B/C AB原创 2017-05-24 19:48:21 · 1154 阅读 · 0 评论 -
Java 数据结构和算法 栈和队列
栈栈是一种抽象的数据结构,栈只允许访问一个数据项,即最后插入的数据项,移除这个数据项之后才能访问倒数第二个数据,后进先出的原则。 class StackX { private int maxSize; // 栈的大小 private long[] stackArray; private int top; // 栈顶 //----------原创 2017-04-29 11:55:43 · 1340 阅读 · 0 评论 -
Java 数据结构和算法 排序
概述 排序的需求 ,例如建立了一个很重要的数据库之后可能根据某些需求对数据进行不同的排序。如姓名按字母排序,学生按成绩排序等等。 如何排序? 假设现在有一排学生要求按身高排序,如果是人工来排序,我们可以看见所有的学生,通过目测可以轻松的比较学生的身高,并且不需要额外的空间,学生推推搡搡的就腾出了位置,然后交换,很简单就排好顺序。 但是计算机却不能像人一样通览数据,原创 2017-04-23 13:41:58 · 818 阅读 · 0 评论 -
Java 数据结构和算法 数组
数组 数组是应用最广泛的数据结构。它被植入到大部分编程语言中,由于数组十分易懂,所以作为数据结构的起点,并展示面向对象编程和数据结构之间的关系。 Java中数组的基础知识这里就不做赘述。 二分查找(针对有序数组)public boolean find(int[] arr, int target) { int low = 0; int high = arr.l原创 2017-04-22 22:09:33 · 1192 阅读 · 0 评论 -
Java 数据结构和算法 概述
数据结构 数据结构是对在计算机内存中(有时在磁盘中)的数据的一种安排,数据结构包括数组、链表、栈、二叉树、哈希表等等,算法对这些结构中的数据进行各种处理,例如查找一条特殊的数据或者对数据进行排序。数据结构可以解决的问题: 现实世界的数据存储 程序员的工具 建模 数据结构的概述还可以从数据结构的优缺点来看待数据结构; 数据结构 优点 缺点 数组 插入快,如果知道下标可以快速的存原创 2017-04-22 18:37:33 · 1514 阅读 · 0 评论