- 博客(14)
- 收藏
- 关注
原创 数据结构&算法Java版(五) 查找、排序算法:折半查找、直接插入排序、折半插入排序、冒泡排序、快速排序、简单选择排序
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录查找算法折半查找排序算法直接插入排序折半插入排序冒泡排序快速排序简单选择排序查找算法折半查找/** * 折半查找 * * @param nums 有序数组nums * @param key 目标值key * @return key在nums中的位置(不存在返回-1) */public int BinarySearch(int[] nums, int key) { int left = 0, right = nums.length
2020-07-28 18:06:12 254
原创 核心课程面试归纳——数据库,操作系统,计算机网络,编译原理,软件工程
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录数据库数据模型三要素三级模式结构关系术语完整性约束视图范式数据库设计事物并发控制:封锁操作系统多道程序设计技术操作系统类型操作系统特征进程线程临界资源同步与互斥信号量进程通信类型调度算法死锁死锁产生的原因死锁产生的必要条件死锁的处理分区分配算法分页与分段页面置换算法缓冲磁盘访问时间磁盘调度算法计算机网络OSI输入网址到获得页面的过程物理层通信方式信道复用技术数据链路层通信方式网络层IPARP传输层UDPTCP三次握手四次挥手应用层HTTPHTTPS编译原理编译过
2020-07-15 19:00:07 442
原创 数据结构&算法Java版(四) 二叉树前序,中序,后序,层次遍历
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录前序遍历算法思路代码中序遍历算法思路代码后序遍历算法思路代码层次遍历算法思路代码前序遍历前序遍历先访问根节点,再访问左子树,最后访问右子树有如下二叉树:前序遍历结果为:A B D G C E F算法思路1.定义字符串str记录遍历结果2.判断根节点root是否为null2.1 若不为null,先访问根节点,将root.val加入str中2.2 将左子树root.left作为新的根节点递归调用,结果加入str2.3 将右子树root.righ
2020-07-12 14:33:20 273
原创 数据结构&算法Java版(四) 二叉树
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录二叉树二叉树的构造算法思路1 构造2 输出代码二叉树二叉树的构造现有格式化字符串str = "A(B(D(,G)),C(E,F))"其中每一个字母代表一个节点的值,字母后面的括号"()"代表它的子树,其中逗号","前为左子树,逗号","后为右子树。上述字符串str构造出的二叉树如下:算法思路1 构造1.定义栈结构Stack<BTNode<Character>> stack用于临时存储树节点2.定义节点类型BTNode&
2020-07-12 14:08:09 189
原创 数据结构&算法Java版(三) 字符串模式匹配 暴力法&KMP算法
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录字符串模式匹配暴力法(Brute-Force)算法思路代码KMP算法算法思路代码字符串模式匹配现有目标串s:"aaaaab"与模式串t:"aaab"要求返回s中与t相同的子串起始下标位置index,在该题中,为2暴力法(Brute-Force)算法思路1.定义指针i,j分别指向s,t的开头2.当i和j均为移动至尽头时,进行循环:2.1 如果i,j处字符相同,说明暂时匹配。i,j各加12.2 如果i,j处字符不相同,回退指针由于此时已经向
2020-07-11 17:06:49 267
原创 数据结构&算法Java版(二) 栈&队列
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录栈&队列栈队列中缀表达式转后缀表达式算法思路代码后缀表达式求值算法思路代码验证回文串算法思路代码栈&队列栈栈节点StackNodeclass StackNode<T> { public T val; public StackNode<T> next; public StackNode() { this(null); } public StackNode(T
2020-07-10 14:52:09 154
原创 数据结构&算法Java版(一) 链表
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录链表单链表双链表链表排序算法思路代码合并有序链表算法思路代码链表单链表链表节点LinkedNode// 链表节点LinkedNodeclass LinkedNode<T> { public T val; public LinkedNode<T> next; public LinkedNode() { this(null); } public LinkedNode(T v
2020-07-09 22:13:36 178
原创 Java(六) 各种转换大全
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录各种转换大全`int`,`String`,`char`的相互转换进制转换数组和集合的相互转换各种转换大全int,String,char的相互转换int转Stringint num = 100;String str;str = String.valueOf(num);str = Integer.toString(num);String转intString str = "100";int num = Integer.parseInt(str);
2020-07-08 20:51:00 113
原创 Java(五) 网络通信
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录网络通信InetAddress实例客户端服务器端网络通信InetAddressInetAddress.getLocalHost() 返回本地主机的InetAddress对象host.getHostName() 获取主机名host.getHostAddress() 获取主机ip地址使用以上方法可能会抛出UnknownHostException异常,表示主机不存在InetAddress host;try { host = InetAddres
2020-07-01 20:37:49 105
原创 Java(四) 文件I/O
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录文件I/OFileInputStream&FileOutputStreamFileReader&FileWriterBufferedReader&BufferedWriterDataInputStream&DataOutputStream文件I/OFileInputStream&FileOutputStream使用FileInputStream类读取文件内容,使用FileOutputStream类写入文件impor
2020-06-30 16:12:19 86
原创 一行代码解决二叉树最大深度
public int maxDepth(TreeNode root) { return root == null ? 0 : Math.max(1 + maxDepth(root.left), 1 + maxDepth(root.right));}
2020-06-30 13:11:51 102
原创 Java(三) 多线程
欢迎关注我的B站账号:卍卍子非鱼卍卍文章目录多线程Thread线程休眠线程加入线程中断线程优先级线程同步同步块同步方法多线程Thread继承Thread类并重写run()方法,通过start()方法启动线程public class ThreadTest extends Thread { private int count = 10; public void run() { while (true) { System.out.println(
2020-06-29 19:57:27 108
原创 Java(二) 异常处理与自定义异常
欢迎关注我的B站账号:卍卍子非鱼卍卍Java中的异常均继承于Throwable类,继承关系如下图所示异常处理Java语言的异常处理由try-catch代码块完成,在try中书写可能会发生异常的Java语句,catch代码块位于try之后,用于对被try捕获的异常进行处理try{ //有可能会发生异常的代码}catch(Exception e){ //异常处理}自定义异常1.创建自定义异常类,该类需继承Exception类2.在具体方法中通过throw关键字抛出自定义异常对象3.在
2020-06-28 21:39:01 312
原创 Java(一) 那些实用但易忘的方法
Java 那些实用但易忘的方法字符串StringStringBuilder数组Arrays包装类IntegerCharacter数字处理类MathRandom集合类Collection接口Set集合Map集合欢迎关注我的B站账号:卍卍子非鱼卍卍字符串Stringstr.indexOf(String s) 查找字符串s在指定字符串中首次出现的位置str.lastIndexOf(String s) 查找字符串s在指定字符串中最后一次出现的位置String str = "hello world";i
2020-06-27 23:31:28 137 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人