2021-7-16学习总结

本文概述了上午的时间轴,详细介绍了动态规划的一维和二维实例,包括从递归关系到初始化条件,以及如何通过dp[n]=dp[n-1]+dp[n-2]求解。下午则转向Java学习,讲解了JDBC的基础概念、操作步骤和高级接口设计,以及与MySQL数据库的连接实践。
摘要由CSDN通过智能技术生成

上午9点~中午12点,

日常vj刷题,动态规划(磕了个B题,关键是还没对)
动态规划:
1,简单的一维dp:
在这里插入图片描述
要求 dp[n],动态规划的题,把一个规模比较大的问题分成几个规模比较小的问题,然后由小的问题推导出大的问题。,dp[n] 的规模为 n,比它规模小的是 n-1, n-2, n-3…. ,dp[n] 一定会和 dp[n-1], dp[n-2]….存在某种关系的。找出他们的关系。

对于上面的题:
一种是从第 n-1 级跳上来
一种是从第 n-2 级跳上来
要算所有可能的跳法,所以有 dp[n] = dp[n-1] + dp[n-2]。
找出初始化条件,再进行初始化。
2,二维数组的 DP:
例:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。
问总共有多少条不同的路径?

两种到达方式:
一种是从 (i-1, j) 这个位置走一步到达。
一种是从(i, j - 1) 这个位置走一步到达。
就有关系式:关系式是 dp[i] [j] = dp[i-1] [j] + dp[i] [j-1]。
找出初始化条件,再进行初始化。
3,二维求最短路径和
例:在这里插入图片描述
两种方式到达:
一种是从 (i-1, j) 这个位置走一步到达。
一种是从(i, j - 1) 这个位置走一步到达。
关系式:在这里插入图片描述
4,困难的编辑距离:(还不会)
给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数。
在这里插入图片描述

下午3点~5点20

学习Java,看视频,JDBC编程与MySql数据库。
1,JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数 据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。
2,JDBC 可做三件事:与数据库建立连接、发送 SQL 语句并处理结果。下列代码段给出了以上三步的基本示例:

Connection con = DriverManager.getConnection("jdbc:odbc:wombat","login",
"password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs.next()) {
int x = rs.getInt("a");
String s = rs.getString("b");
float f = rs.getFloat("c");
} 

3,JDBC 是个”低级”接口,也就是说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是”对用户友好的”接口,它使用的是一种更易理解和更为方便的 API,这种API在幕后被转换为诸如 JDBC 这样的低级接口。
4,使用 JDBC-ODBC 桥驱动程序, 可以用下列代码装载它:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
5,如果类名是 jdbc.DriverXYZ ,将用以下的代码装载驱动程序:

Class.forName("jdbc.DriverXYZ"); 

6,驱动加载指定数据库的练习:

public class JDBCPractice {
    private String userName = "root";
    private String password = "ttddww20021208";
    private String ur1 = "jdbc:mysql://localhost:3306/db1";
     {
        try
        {
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("驱动加载成功!");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("加载失败");
            e.printStackTrace();
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值