算法
残念怪蜀黍
跨界码农
展开
-
选择排序
选择排序 O(n^2) 描述: 选择排序顾名思义就是先选择出最小的数然后进行排序。 1.在0~N-1的位置的数组上选择出最小的数,然后把最小的数放在位置0上 2.在1~N-1的位置的数组上选择出最小的数,然后把最小的数放在位置1上 3.以此类推 public void selectSort(int[] arr){ int min=0; //最小的数的下标位置 in原创 2016-10-23 11:31:27 · 198 阅读 · 0 评论 -
插入排序
插入排序 O(n^2) 描述: 1.位置0和1的数比较,1较小则向前移 2.位置2和1的数比较,再和位置0的数比较,较小的则向前移 3.以此类推 先把设一个变量,从下标为1开始循环,把每个数依次赋值给该变量,再一个循环,j=i,检查变量之前的每一个数j-1,如果数大于等于该变量的值,则把j-1的值赋值给j 下面用图片解释一下: 因为最开始比较是当前数和前一个数比较,如果变量开始原创 2016-10-23 12:09:09 · 153 阅读 · 0 评论 -
二分查找以及冒泡排序
分享一下自己的理解原创 2016-10-20 08:40:38 · 220 阅读 · 0 评论 -
数组实现栈及用栈实现字符串逆序
栈的实现 栈是先进后出,后进先出的一种数据结构。将栈想象成弹夹就可以,而子弹就是每一个数据。 下面用数组来实现一个栈 public class MyStack{ //数组实现栈 private int[] arr; private int maxSize; //根据top所指向的位置进行压入和弹出(被限制了) private int top;原创 2016-11-01 15:18:22 · 1071 阅读 · 0 评论 -
一般队列和循环队列及优先级队列的实现
一般队列 队列是先进先出,后进后出的数据结构。可以想象成排队的状态。 public class Queue{ //数组实现队列 private int[] arr; //最大空间 private int maxSize; //有效元素大小 private int elems; //队列头(用于删除数据) priv原创 2016-11-01 17:17:08 · 386 阅读 · 0 评论 -
链接点以及链表实现
链接点 链接点中包含一个数据域和一个指针域,其中数据域用来包装数据,而指针域用来指向下一个链接点 public class Link{ //数据域 private int data; //指针域 private Link next; public Link(int data){ this.data=data; } public i原创 2016-11-02 14:12:03 · 376 阅读 · 0 评论