数据结构
codeydj
缓慢前行
展开
-
转发 二叉排序树 删除子节点
https://blog.csdn.net/isea533/article/details/80345507转载 2020-06-05 14:53:51 · 136 阅读 · 0 评论 -
堆排序(个人理解
堆排序首先理解什么是堆:堆是一个完全二叉树,完全二叉树:除了最后一层,其他层都是满的,最后一层从左到右依次有叶子节点:没有子节点的节点满二叉树每一层的结点个数都达到了最大值, 即满二叉树的第i层上有个2的i-1次方个结点 (i≥1) ,满二叉树就一共有2的i次方-1个 (注意区别)好比有10层,那就是有2的10次方-1个节点1023,第10层有2的9次方个节点 512个假设第10层没满,树一共有800个节点800/2-1=399,到511之间 都是第9层至于从第一层到第8层的每一层的节点个数是原创 2020-06-03 10:37:38 · 228 阅读 · 0 评论 -
基础的几个排序(Java实现)
直接上代码package com.ydj.study.sort;import java.util.Arrays;/** * 冒泡排序 */public class Sort { //插入排序,O(n^2) insertSort > selectSort> bubbleSort public void insertSort(int[] array) { for (int i = 1; i < array.length; i++) {原创 2020-05-30 15:48:08 · 124 阅读 · 0 评论 -
单链表反转的学习
实现:public class SingleLinkedList { /**链表的头结点*/ Node head = null; /** * 链表添加结点: * 找到链表的末尾结点,把新添加的数据作为末尾结点的后续结点 * @param data */ public void addNode(int data){ Node newNode = new Node(data); if(head == nu原创 2020-05-20 11:57:12 · 140 阅读 · 0 评论