二分法思想是个基础但又极其重要的思想,C++,Java,数据结构,算法设计等多门课程都详细地讲述了一遍二分法。 对于一个已排序的长数组来说,二分法其O(NlogN)的时间复杂度,对于效率的提升是毋庸置疑的,而且二分法用途广泛,实用且方便。但这一切的前提是数组已排序,对于无序表与链表,二分法便无能为力 ...
分类:
其他好文 时间:
2018-10-15 00:39:13
阅读次数:
162
栈:是一种容器,类似于桶一样,栈是一种特殊的线性表,不同于一般线性表的是,一般线性表可以在表内任意位置添加和删除元素, 而栈只可以在尾端进行,栈尾一般称之为栈顶,另一端称之为栈底,特点是:后进先出/先进后出。 而一般常见使用的有 顺序栈 和 链栈;顺序栈类似于数组一样,而链栈就是用链表实现的,链栈的 ...
分类:
编程语言 时间:
2018-10-05 16:07:52
阅读次数:
207
一.变量间的简单复制 Java 数据结构图 Boolean bln1 = true; Boolean bln2 = bln1 ; System.out.println(bln1 +' '+ bln2 ) 打印结果: true true 基本数据类型包括byte、int、char、long、float ...
分类:
编程语言 时间:
2018-09-26 12:18:59
阅读次数:
258
由于并行程序与串行程序的不同特点,适用于串行程序的一些数据结构可能无法直接在并发环境下正常工作,这是因为这些数据结构不是线程安全的。本节将着重介绍一些可以用于多线程环境的数据结构,如并发List、并发Set、并发Map等。 1.并发List Vector 或者 CopyOnWriteArrayLis ...
分类:
编程语言 时间:
2018-09-24 19:32:04
阅读次数:
171
1.基于数组的链表 2.双向链表 3.双向队列 4.堆 ...
分类:
编程语言 时间:
2018-08-28 17:54:28
阅读次数:
216
数据结构, 算法, 迪杰斯特拉, Dijkstra, 最短路径查找 ...
分类:
编程语言 时间:
2018-08-25 16:28:19
阅读次数:
216
本篇文章主要让大家理解什么是Scala的反射, 以及反射的分类, 反射的一些术语概念和一些简单的反射例子. 什么是反射 我们知道, Scala是基于JVM的语言, Scala编译器会将Scala代码编译成JVM字节码, 编译过程中会擦除Scala特有的一些类型信息, 这就叫类型擦除(type era ...
分类:
其他好文 时间:
2018-08-24 16:07:07
阅读次数:
146
程序员必知的8大排序(一) 直接插入排序,希尔排序(java实现) 2012年05月12日 11:18:05 阅读数:56853 标签: java数据结构算法 更多 个人分类: Java 程序员必知的8大排序(一) 直接插入排序,希尔排序(java实现) 2012年05月12日 11:18:05 阅 ...
分类:
编程语言 时间:
2018-08-23 20:59:29
阅读次数:
193
//Data structure and algorithm 一、数据结构和算法 在任何语言中都是通用的,是一独立的学科,除了数据结构就是算法 常用的数据结构: 数组(Aray),( Stack),队列( Queue),二叉树、链表( Linked List)、哈希表、散列表(Hash)等算法 冒泡 ...
分类:
编程语言 时间:
2018-08-21 10:42:41
阅读次数:
190
线性表是一种可以在任意位置插入和删除元素,由n个同类型元素组成的线性结构。主要包括顺序表,单链表,循环单链表,双向链表和仿真链表。应用比较广泛的是顺序表和单链表。 2 下面是线性表的接口,主要操作包括插入元素,删除元素,取得元素,得到线性表元素个数,判断线性表是否为空。 3 package com.... ...
分类:
编程语言 时间:
2018-08-17 14:57:57
阅读次数:
167