摘要: 1、分而治之(divide and conquer,D&C) (1)步骤:①找到简单的基线条件(可能是空数组货只包含一个元素的数组);②不断分解问题/缩小规模,直至符合基线条件。 (2)不是用于解决问题的算法,而是一种解决问题的思路。 (3)原理:将问题逐步分解。 2、欧几里得算法:gcd(a,b) 阅读全文
posted @ 2022-05-13 11:53 Annuush 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 1、数组 ①数组元素是连在一起的。 ②同一个数组中,元素的类型都必须相同(都为int、double等)。 ③支持随机访问,因此读取速度更快。 2、链表 ①链表元素是分开的,每个元素都存储下一个元素的地址。 ②仅支持顺序访问,但擅长于插入和删除操作(只需修改前一个元素指向地址)。 3、快速排序DEMO 阅读全文
posted @ 2022-05-13 11:51 Annuush 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 一、加权图(weighted graph) (1)提高或降低某些边的权重 (2)权重(weight):每条边所关联的数字 开销:从起点出发前往该节点所需要的时间。 (3)加权图(weighted graph):带权重的图【计算加权图的最短路径,使用狄克斯特拉算法】 非加权图(unweighted g 阅读全文
posted @ 2022-05-13 11:51 Annuush 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 1、递归 (1)调用函数自身 (2)每个递归函数都有两个条件:基线条件(base case:函数不再调用自己,避免无限循环【通常是数组为空或者只包含一个元素】)和递归条件(recursive case:函数调用自己) def countdown(i): print(i) # 基线条件 if i<=0 阅读全文
posted @ 2022-05-13 11:51 Annuush 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 一、广度优先搜索(breadth-firsh search,BFS) =>可回答问题:①从节点A出发,有前往节点B的路径吗?②从节点A出发,前往节点B的哪条路径最短? =>最短路径问题(shorterst-path problem):简历模型,再使用广度优先搜索来解决。 二、图 (1)组成:节点(n 阅读全文
posted @ 2021-10-11 17:41 Annuush 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1、列表 (1)内部机制:实现、冲突和散列函数 2、散列函数 (1)散列函数总是将相同的输入映射到相同的索引;将不同的输入映射到不同的索引。 (2)散列函数的数组长度是已知的,只返回有效的索引。 3、散列表(hash table) (1)定义:结合散列函数和数组创建的一种数据结构,也称为散列映射、映 阅读全文
posted @ 2021-10-09 18:44 Annuush 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 1、二分查找DEMO:有序元素列表 def binary_search(list,item): # 设置首位low和尾尾high low = 0 high = len(list)-1 # 循环至至只包含一个元素时跳出 while low <= high: # //:整数型除法(向下取整);/:浮点数 阅读全文
posted @ 2021-09-26 21:35 Annuush 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 1、导入Jar包 mysql-connector-java-5.1.0-bin.jar 2、加载驱动 Class.forName("com.mysql.jdbc.Driver"); 3、建立连接 Connection connection=null; connection=DriverManager 阅读全文
posted @ 2019-11-18 01:08 Annuush 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 第一种: @Override public List<Salary> findSomeSalary( Integer swid,String sdesk, Date stime) { StringBuffer hql=new StringBuffer(); hql.append("from Sala 阅读全文
posted @ 2019-06-03 13:38 Annuush 阅读(1549) 评论(0) 推荐(0) 编辑