![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
培训记录
文章平均质量分 67
2021年11月21日参加培训,记录每日笔记
聂亚平
30多岁的程序员,如何寻求新的出路
展开
-
位运算---加、减、乘、除
//位运算 增加乘除 // ^ 无进位的相加 @Test void contextLoads(){ int a=22,b=32; int result=a+b; System.out.println(result); //用位运算 就是 a^b+ ((a&b)<<1) 无进位的相加 + 与完 向左移动一位 //分析: a=22 2进制 16+4+2 010110 .原创 2021-11-28 19:38:09 · 307 阅读 · 0 评论 -
位图的运算
//位图//位图 如果要表示int 数组 100个 我们需要new int[]{xx,xx,xx,xx} 一个int 4个字节 100个就是占400个字节//如果用位图 用二进制来代表。 比如 int 是占32位 可以表示0--31的数字。100 如果用位置表示就是 (100+32)/32=4//我们可以用 int[4] 就可以表示了 只占16个字节 这就是位图的效果//long 是8个字符 占64位 。下面就用long做例子吧@Testvoid contextLoads(){ /.原创 2021-11-28 17:31:11 · 400 阅读 · 0 评论 -
有序双链表合并
public static class ListNode { public int val; public ListNode next; public ListNode(int v){ this.next=null; this.val=v; }}//两个有序列表的合并//链表A 1 3 5 7 9//链表B 1 2 4 6//合并以后是 1 1 2 3 4 5 6 7 9@Testvoid contextL.原创 2021-11-27 22:36:46 · 156 阅读 · 0 评论 -
数据结构与算法---双链相加
public static class ListNode { public int val; public ListNode next; public ListNode(int val) { this.val = val; } public ListNode(int val, ListNode next) { this.val = val; this.next = next; }}//两个链表相加/.原创 2021-11-27 22:15:05 · 164 阅读 · 0 评论 -
双链实现--双端队列
//实现双链 head 输出 输入 tail 输出输入public static class Node<V>{ public V value; public Node<V> next; public Node<V> last; public Node(V v){ this.value=v; this.next=null; this.last=null; }}public s.原创 2021-11-27 20:30:05 · 191 阅读 · 0 评论 -
单链表模仿---堆栈
public static class Node<V> { public V value; public Node<V> next; public Node(V v) { value = v; next = null; }}public static class MyQueue<V>{ public Node<V> head; public Node<V> t.原创 2021-11-27 19:42:46 · 186 阅读 · 0 评论 -
单链与双链的反转
@Testvoid contextLoads() { //单链反转 Node node1=new Node(1); Node node2=new Node(2); Node node3=new Node(3); Node node4=new Node(4); node1.next=node2; node2.next=node3; node3.next=node4; Node head=new Node(0); head.next=node.原创 2021-11-27 13:44:41 · 197 阅读 · 0 评论 -
二分法,时间复杂度,动态数组,哈希表,有序表
1.二分法一个有序数组 1,2,3,5,6,8,9,10想找到9二分法就先分一半 8/2=4 是6 小于9看右边 继续分一半 6 8 9 10 刚好是9 返回2.时间复杂度常数操作 跟数据量 无关比如在int数组 10亿个数 在里面找第3个数 跟第3000万个数 时间上是几乎一样 这就是常数o(1) o(logn) o(n) o(n2) o(n3) ....o(2的n次方 指数) o(n!)3.动态数组arrayList 扩容 从时间复杂度来说 他是...原创 2021-11-25 01:41:06 · 204 阅读 · 0 评论 -
排序算法---选择排序,冒泡排序,拆入排序
1.选择排序对比0~n-1通过比较值 将值小的放0位对比1~n-1通过比较值 将值小的放1位以此类推......对比n-2~n-1通过比较值 将值小的放n-2位2.冒泡排序对比0~n-10 1 位置进行对比 值大的 往后然后1 2 进行对比 值大的放2两两对比值大的 放后面 最终 n-1的值是最大的以此类推........3.插入排序下标:0-0 有序下标:0-1 有序 对比大小 小的往前下标:0-2 有序对比大小 小的往前下标:0-3 有序对比大小 ...原创 2021-11-24 00:28:47 · 477 阅读 · 0 评论 -
算法与数据结构---位运算
位运算原创 2021-11-22 22:25:43 · 389 阅读 · 1 评论