算法(基于java)
算法
4/帽子
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
关于递归的几个题目
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例: 给定 1->2->3->4,返回 2->1->4->3.原创 2020-07-21 21:37:55 · 188 阅读 · 0 评论 -
排序(冒泡、选择、插入、希尔、快排、归并、优先队列、堆排序)
https://img-blog.youkuaiyun.com/20161009190728886原创 2020-02-23 19:50:05 · 358 阅读 · 0 评论 -
链表Linked List(双向,环形、背包)
链表 链表是有序的列表,但是它在内存中是存储如下: 小结: 链表是以节点的方式来存储,是链式存储每个节点包含 data 域(数据), next 域:指向下一个节点. 如图:发现链表的各个节点不一定是连续存储. 链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定 添加(创建): 1.先创建一个head 头节点, 作用就是表示单链表的头 2.后面我们每添加一个节点,就直接加...原创 2020-02-18 18:05:57 · 335 阅读 · 0 评论 -
递归(迷宫、八皇后)
递归 回顾 package com.dg_recursion; /** * @author ming * @create 2020-02-17 15:24 */ public class RecursionDemo { public static void main(String[] args) { test(4); } private stati...原创 2020-02-19 08:59:04 · 108 阅读 · 0 评论 -
栈(动态数组与链表实现)
栈 栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。 允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。 根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放...原创 2020-02-18 18:17:21 · 198 阅读 · 0 评论 -
稀疏数组
稀疏数组:当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法是: 记录数组一共有几行几列,有多少个不同的值。 把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模。 二维数组 转 稀疏数组的思路: 遍历原始的二维数组,得到有效数据的个数 sum 根据sum 就可以创建 稀疏数组 sparseArr int[sum + 1...原创 2020-02-18 17:46:10 · 101 阅读 · 0 评论
分享