数据结构
程序灵魂之一:数据结构
东方文艺复兴
嗨,你好!我是东方文艺复兴,一个满怀热情的程序员,疯狂热爱计算机科学,我对各种编程语言都有着浓厚的兴趣,从老牌的C、C++、Java,到新兴的Python、JavaScript,甚至包括那些呆萌的小众语言,我都非常感兴趣,所谓兴趣就是最好的老师!
我深信,编程不只是一门科学,它也是一种艺术,是一种可以让我们创造、进行思考、解决问题并帮助他人的魔法。我渴望用我的编程技术去帮助更多的人,用代码来解决实际问题,用软件来改变世界。
我的目标是,用我手中的键盘把这个世界敲得更加美好!!!
展开
-
删去k个数字后的最小值
参考:程序员小灰题目来源:漫画:删去k个数字后的最小值substring() 方法返回字符串的子字符串。语法public String substring(int beginIndex)或public String substring(int beginIndex, int endIndex)参数beginIndex -- 起始索引(包括), 索引从 0 开始。e...原创 2019-06-14 01:36:29 · 517 阅读 · 0 评论 -
如何用栈实现队列?
参考:程序员小灰漫画:如何用栈实现队列?注意transfer()是将主栈A的元素全部转移到辅助栈B(备胎栈B)中。package chapter5.part7;import java.util.Stack;import org.junit.Test;public class StackToQueue { Stack<Integer> stackA =...原创 2019-06-10 00:54:34 · 609 阅读 · 0 评论 -
最小栈的实现
参考:程序员小灰参考2:漫画算法:最小栈的实现package chapter5.part3;import java.util.Stack;public class MinimumStack { private Stack<Integer> mainStack = new Stack<>(); private Stack<Integer>...原创 2019-06-08 20:52:48 · 194 阅读 · 1 评论 -
快速排序之非递归实现
参考:程序员小灰快排可以通过递归实现,也可是使用非递归的方法实现,即能够用栈的方式实现。绝大多数的递归逻辑都可以用栈的方式来代替。package chapter4.part3;import java.util.Arrays;import java.util.HashMap;import java.util.Map;import java.util.Stack;import ...原创 2019-06-02 15:28:13 · 643 阅读 · 0 评论 -
二叉树层序遍历,使用队列
参考:程序员小灰package chapter3.part2;import java.util.Arrays;import java.util.LinkedList;import java.util.Queue;import org.junit.Test;public class BinaryTreeFindWithQueue { @Test public vo...原创 2019-05-23 16:59:11 · 645 阅读 · 0 评论 -
二叉树遍历(栈方式)[非递归]
参考:程序员小灰前序遍历:package chapter3.part2;import java.util.Arrays;import java.util.LinkedList;import java.util.Stack;import org.junit.Test;public class BinaryTreeFindWithStack { @Test publ...原创 2019-05-22 23:17:12 · 489 阅读 · 0 评论 -
二叉树创建与遍历(LinkedList+递归思想)
自定义的节点类,TreeNode:package chapter3;public class TreeNode { int data; TreeNode leftNode; TreeNode rightNode; public TreeNode(int data) { this.data = data; }}package chapter...原创 2019-05-21 23:29:42 · 521 阅读 · 0 评论 -
传说中的堆排序
参考:程序员小灰package chapter4.part4;import java.lang.reflect.Array;import java.util.Arrays;import org.junit.Test;public class HeapSortTest { @Test public void testHeapSort() { int[] a...原创 2019-06-02 16:45:00 · 228 阅读 · 0 评论 -
优先队列
参考:程序员小灰package chapter3.part4;import java.util.Arrays;public class PriorityQueue { private int[] array; private int size; public PriorityQueue(){ //队列初始长度3 array ...原创 2019-05-26 03:06:44 · 130 阅读 · 0 评论 -
二叉堆元素的上浮和下沉
参考:程序员小灰package chapter3.part3;import java.util.Arrays;import javax.swing.text.AsyncBoxView.ChildState;import org.junit.Test;public class HeapAdjust { @Test public void printUpAdju...原创 2019-05-25 01:24:54 · 792 阅读 · 1 评论 -
如何判断链表有环?
参考:程序员小灰参考2:漫画算法:如何判断链表有环?package chapter5.part2;public class LinkedListCycleTest { public static void main(String[] args) { Node node1 = new Node(5); Node node2 = new Node(3); Node n...原创 2019-06-07 23:11:48 · 231 阅读 · 0 评论