本月博客排行
-
第1名
duanfei -
第2名
benladeng5225 -
第3名
steven789654 - wddpwzzhao123
年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
wy_19921005 - benladeng5225
- kaizi1992
- tanling8334
- vipbooks
- sam123456gz
- arpenker
- zysnba
- fantaxy025025
- wallimn
- e_e
- jh108020
- ganxueyun
- Xeden
- xyuma
- wangchen.ily
- zhanjia
- johnsmith9th
- zxq_2017
- forestqqqq
- jbosscn
- daizj
- xiangjie88
- xpenxpen
- 喧嚣求静
- lchb139128
- kristy_yy
- javashop
- lzyfn123
- sunj
- yeluowuhen
- ajinn
- lerf
- lemonhandsome
- chenqisdfx
- xiaoxinye
- flashsing123
- lyndon.lin
- bosschen
- zhangjijun
- sunnylocus
- lyj86
- paulwong
- sgqt
- hudiemeng870329
- 青否云后端云
- mft8899
- duanfei
最新文章列表
java排序算法(菜鸟版)
数据结构相关的内容在这里。
package sort;
import java.util.Arrays;
public class ArraySorter {
/**
* int数组的排序工具 复习五种排序方法: 交换排序 ...
最大堆 排序
卸载最前面,下面的所有讨论都是基于二叉堆
一:什么是堆:
堆是一个数组结构,可以看着为一颗完全二叉树,把这颗完全二叉树按层从上到下,每层从左至右编序号,每个序号所对应的元素即为数组中该序号的元素;该树出最后一层以外每一层都排满,最后一层从左至右,先左孩子再右孩子排列,如果有父节点没有排满孩子(无孩子或无右孩子),只可能是右边的父节点未排满孩子。
因此该结构有如下结构:
如果节点i,则它的左孩子为2 ...
[堆排序]poj 2823:Sliding Window
大致题意:
给出一列共n个数,和一个正整数k。对于所有的大于等于1,小于等于n-k的数i,求出在[i,i+k]这个区间中最大的数和最小的数
大致思路:
借鉴 依然 的思路,要了解堆排序的大致运转方式以及堆内元素之间的调整过程。
#include<iostream>
#include<cstring>
#inclu ...
Java实现可泛型的Heap
可泛型的Heap,方便使用。
Heap接口:
public interface Heap<T>
{
/**
* return the top element of the heap
*
* @return top element
*/
Object get();
/**
* remove the top element of t ...
最大堆排序java实现(算法导论第6章)
主程序:
package yangkunlin.algorithm.sort;
import yangkunlin.algorithm.tool.SortTool;
/**
* 堆排序
*
* 前提:堆的根节点的序号是1,并且满足最大堆属性。
* 堆是存放在数组中的,堆的大小要小于数组的大小。
* 注意下边个方法的参数是以1开始记得。
*
* 时间复杂度: ...
堆排序(HeapSort) Java实现
堆排序的思想是利用数据结构--堆。具体的实现细节:
1. 构建一个最大堆。对于给定的包含有n个元素的数组A[n],构建一个最大堆(最大堆的特性是,某个节点的值最多和其父节点的值一样大。这样,堆中的最大元素存放在根节点中;并且,在以某一个节点为根的子树中,各节点的值都不大于该子树根节点的值)。从最底下的子树开始,调整这个堆结构,使其满足最大堆的特性。当为了满足最大堆特性时,堆结构发生变化,此时递归调 ...