![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
基本数据结构使用,常见算法的设计
weixin_43280948
这个作者很懒,什么都没留下…
展开
-
求整型数最近的2的次方数
题目描述:给定数m,求离其最近的二的次方数方案一:对m的周围元素进行遍历,若其为2的次方则返回二的次方数特点:转换为二进制后只有1bit位为1,其余均为0方案二(JDK提供),在HashMap初始化计算数组大小时应用到public final class Integer extends Number implements Comparable<Integer> { public static int highestOneBit(int i) { i |= (i .原创 2021-03-18 11:25:16 · 461 阅读 · 0 评论 -
链表反转(通俗易懂)
1、循环遍历旧链表,删除头结点,头插法构造新链表public MyList reverse(MyList head) { MyList temp; MyList newHead = null; while (head != null) { //1.旧链表头结点删除操作 temp = head; head = head.next; //2.新链表插入操作(头插法) temp.next = newHead; newHead =temp; } return原创 2020-10-16 09:34:23 · 63 阅读 · 0 评论 -
关于数据的排列组合问题(循环+递归+栈)
1、与顺序有关的全排列问题(从数列中选取n个数),问可能会出现多少种不同的情况private Stack<Integer> s=new Stack<>(); //从a中挑选n个数(与顺序有关),数字不可重复选取 public void M(int[] a,int n) { if(s.size()==n) { System.out.println(s.toString()); return; } for(int i=0;i<a.length;i+原创 2020-10-12 15:23:50 · 220 阅读 · 0 评论 -
数据结构之图的广度、深度优先搜索
数据结构:图的遍历1.图的搜索方式分为两种:深度优先搜索(dfs): 类似于树的先根遍历,每次访问完当前结点后首先访问当前结点的第一个 邻接点,是一个递归的过程广度优先搜索(bfs): 类似于树的按层次遍历,每次访问完当前结点后继续访问当前结点的所有 邻接点,通常与队列配合使用2.注意事项: 因 图结构 结点间的关系是多对多的,所以可能存在 回路,所以在遍历时需要 用数组visited[]记录所访问过的结点,防出现死循环3.图的遍历(邻接矩阵存储)原创 2020-10-12 01:25:15 · 290 阅读 · 0 评论