前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >leetcode_两数之和

leetcode_两数之和

原创
作者头像
用户5383110
修改2023-02-28 03:43:54
2250
修改2023-02-28 03:43:54
举报
文章被收录于专栏:DawnSqlDawnSql

两数之和

题目地址:

https://leetcode.cn/problems/two-sum/

解题的思路:

将数字序列中的值,保存在字典中,值为 key,下标为值。 这样就转变成查询问题了,只需要遍历数字序列,查询 target - 遍历的值是否在字典中, 就可以得出两个整数的下标。

代码

代码语言:javascript
复制
function twoSum(nums:list, target:int)
{
    let dic = {};
    let my_count = count(nums);
    let rs = [];

    for (i in range(my_count))
    {
        match {
            dic.contains?(target - nums.nth(i)): rs.add([i, dic.get(target - nums.nth(i))]);
        }
        dic.put(nums.nth(i), i);
    }
    rs;
}
--twoSum([2,7,11,15], 9);
--twoSum([3,2,4], 6);
twoSum([3,3], 6);Copy to clipboardErrorCopied

执行结果

在 JDBC 中执行

代码语言:javascript
复制
    @RequestMapping(value = "/serverless")
    public @ResponseBody
    String serverless(ModelMap model, HttpServletRequest request, HttpServletResponse response,
                      @RequestParam(value = "user_token", required = false) String user_token,
                      @RequestParam(value = "func", required = false) String func,
                      @RequestParam(value = "params", required = false) String params) throws SQLException, ClassNotFoundException {

        Class.forName("org.apache.ignite.IgniteJdbcDriver");
        String url = "jdbc:ignite:thin://127.0.0.1:10800/public?lazy=true&userToken=" + user_token;
        Connection conn = DriverManager.getConnection(url);

        String funcLine = func + "(" + params + ")";

        Object ob = null;
        PreparedStatement stmt = conn.prepareStatement(funcLine);
        ResultSet rs = stmt.executeQuery();

        while (rs.next()) {
            ob = rs.getObject(1);
        }
        rs.close();
        stmt.close();
        conn.close();
        return ob.toString();
    }
}Copy to clipboardErrorCopied

在浏览器中输入:

http://localhost:8080/serverless?user_token=wudafu_token_1&func=twosum&params=[2,7,11,15],9 参数说明: user_token: wudafu_token_1 func:twosum params: [2,7,11,15],9

JDBC运行结果

要点

  1. count 返回序列大小
  2. range 生成序列
  3. 演示了基本的 for 和 match 的用法 具体用法:DawnSql中的函数

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目地址:
  • 解题的思路:
  • 代码
  • 执行结果
  • 在 JDBC 中执行
  • JDBC运行结果
  • 要点
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档