232 · 短网址

news2024/11/15 8:52:21

链接:LintCode 炼码

题解:

class TinyUrl {
public:
    /*
     * @param url: a long url
     * @return: a short url starts with http://tiny.url/
     */
    string longToShort(string &url) {
        // write your code here
        std::string shorturl = generate_shorturl(url);
        while (url2short_.find(shorturl) != url2short_.end()) {
            shorturl = generate_shorturl(url);
        }
        shorturl = "http://tiny.url/" + shorturl;
        short2url_[shorturl] = url;
        url2short_[url] = shorturl;
        return shorturl;
    }

    /*
     * @param url: a short url starts with http://tiny.url/
     * @return: a long url
     */
    string shortToLong(string &url) {
        // write your code here
        auto ite = short2url_.find(url);
        if (ite == short2url_.end()) {
            return "";
        }
        return ite->second;
    }
private:
    std::string generate_shorturl(const std::string& url) {
        static std::string base = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        std::string result;
        result.resize(6);
        for (int i = 0; i < 6; ++i) {
            result[i] = base[random()%base.size()];
        }
        return result;
    }
private:
    std::unordered_map<std::string, std::string> url2short_;
    std::unordered_map<std::string, std::string> short2url_;
};

从多个方面用法介绍62进制_笔记大全_设计学院

1个亿是100M,一个M是6个零
一天是86400秒于等于100000
B->KB->MB->GB每个差距1000

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/657485.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为CentOs配置静态IP

目录 第一步&#xff1a;查看物理机IP 第二步&#xff1a;虚拟机网络设置 点击虚拟机->编辑虚拟机设置 第三步&#xff1a;CentOS网络配置文件 第四步&#xff1a;重启网络 第五步&#xff1a;测试网络 为什么要设置静态IP 在安装好CentOS虚拟机以后&#xff0c;一般我…

代码随想录算法训练营第三十九天| 62.不同路径 、63. 不同路径 II

不同路径 题目链接&#xff1a;力扣 题外话&#xff1a;这题拿到的时候就发现其实是小学三年级的奥数题&#xff0c;甚至寒假看我妹做过【笑哭&#x1f602;】 确定dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[i][j] &#xff1a;表示从&#xff08;0,0&…

nvm控制nodejs版本

1.关系如图 2. 环境配置 3.报错解决 路径导致的nvm安装nodejs失败&#xff1f; The system cannot find the path specified. Could not download node.js v16.19.1 64-bit executable. 解决&#xff1a;nvm安装路径D:\Program Files\nvm&#xff0c;nvm管理的nodejs路径D:\Pro…

在Qgis中使用QMetaTiles插件进行XYZ瓦片离线下载方法

目录 前言 一、Qgis插件库 1、插件库简介 2、QMetaTiles介绍 二、QMetaTiles插件安装 1、在线安装 2、离线安装 三、瓦片下载 1、打开QmeaTiles插件 2、Leaflet加载下载的瓦片 总结 前言 电子地图是地图类应用的基石&#xff0c;作为整个系统的基础。其它的图层要素都构…

Web应用技术(第八周/第4次练习/4h)

这一次练习对JSP和Servlet进行了补充学习 1.JSP的本质&#xff1a;2.include指令的作用&#xff1a;3.EL表达式语言与JSTL&#xff1a;关于EL表达式&#xff1a;&#xff08;1&#xff09;EL表达式用于取参数值与参数值的设定&#xff1a;&#xff08;2&#xff09;EL表达式的本…

【Redis】哨兵机制

一、哨兵机制高可用架构图 哨兵模式时给予主从模式的&#xff0c;是为了解决主从模式单点&#xff08;master&#xff09;故障导致服务不可用的问题&#xff0c;但并未解决单节点存储能力有限的问题。 二、心跳检测机制 三、 选举机制 主观下线&#xff1a;主服务器master宕机后…

html实现好看的个人介绍,个人主页模板4(附源码)

文章目录 1.设计来源1.1 主界面1.2 我的文章界面1.3 我的相册界面1.4 关于我界面1.5 联系我界面 2.效果和源码2.1 动态效果2.2 源代码2.2 源代码目录 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/article/details/131265259 …

web实验四表单处理实验

实验原理 通过jQuery实现修改HTML标签属性&#xff0c;完成网页的动态显示效果&#xff0c;理解JavaScript语法、动态页面的实现原理、基本设计思想及实现方法。 实验目的 理解并掌握基于id、class、name等HTML属性选择器的实现方法 理解并掌握控制disabled、checked、hidden等…

python自动化办公——定制化读取Excel数据并写入到word表格

Python自动化办公——Excel写word表格 文章目录 Python自动化办公——Excel写word表格一、引言二、数据准备三、python代码1、方法一2、方法二3、方法三 一、引言 最近到了毕业设计答辩的时候&#xff0c;老师让我帮毕业生写一段毕业设计的功能就是提供一个学士学位授予申请表…

网安自学路线学习心得/学习规划

趁着今天下班&#xff0c;我花了几个小时整理了下&#xff0c;非常不易&#xff0c;希望大家可以点赞收藏支持一波&#xff0c;谢谢。 我的经历&#xff1a; 我 19 年毕业&#xff0c;大学专业是物联网工程&#xff0c;我相信很多人在象牙塔里都很迷茫&#xff0c;到了大三大…

pywinauto自动化测试使用经验

本文主要介绍了pywinauto自动化测试使用经验&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值&#xff0c;需要的朋友们下面随着小编来一起学习学习吧 在开发Windows应用程序时&#xff0c;我们经常需要进行测试来确保程序…

CSS基础学习--16 Float(浮动)

一、定义 CSS 的 Float&#xff08;浮动&#xff09;&#xff0c;会使元素向左或向右移动&#xff0c;其周围的元素也会重新排列。 Float&#xff08;浮动&#xff09;&#xff0c;往往是用于图像&#xff0c;但它在布局时一样非常有用。 元素的水平方向浮动&#xff0c;意味着…

【Spring】— Spring MVC的注解

目录 Spring MVC的注解1.DispatcherServlet2.Controller注解类型3.RequestMapping注解类型&#xff08;1&#xff09;RequestMapping注解的使用&#xff08;2&#xff09;RequestMapping注解的属性&#xff08;3&#xff09; 组合注解&#xff08;4&#xff09;请求处理方法的参…

2023天猫纸品数据:抽纸销额高达25亿,湿厕纸为重点增长类目

如今&#xff0c;纸巾早已成为人们日常生活的必需品。作为刚需物品&#xff0c;纸巾的产品形态呈现多元化、细分化趋势&#xff0c;其市场规模也比较庞大。 根据鲸参谋电商数据分析平台的相关数据显示&#xff0c;今年1月至4月&#xff0c;天猫平台上纸巾行业大盘的销量超过1.6…

05 用况图

用况图 1. 主题 是由一组用况所描述的一个系统或子系统。 以Credit Card Validation System 所标识的矩形就是一个主题&#xff1a; 2. 用况 使用视角&#xff1a; 用况表达了参与者使用系统的一种方式。 系统设计视角&#xff1a;一个use case规约了系统可以执行的一个动…

Spring AOP讲解

目录 Spring AOP概念 AOP适用场景 AOP 组成 1、切面&#xff08;Aspect&#xff09; 2、切点&#xff08;Pointcut&#xff09; 3、通知&#xff08;Advice&#xff09; 4、连接点&#xff08;Join Point&#xff09; Spring AOP实现 添加AOP框架依赖 定义切面和切点…

解决 An attempt was made to call a method that does not exist. 问题详解

哈喽大家好&#xff0c;我是阿Q。今天在开发代码的过程中&#xff0c;由于手抖&#xff0c;不知道引入了什么包依赖&#xff0c;导致项目启动一直报错&#xff0c;特写本文来记录下解决问题的经过。 文章目录 问题描述报错信息如下报错描述 解决方法总结 有想赚点外块|技术交流…

hadoop基础(二)

JAVA客户端 环境搭建 创建Maven项目,添加Hadoop依赖. <dependencies><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId…

神级插件Bito介绍及使用

还在用其他AI?不是说它不火了&#xff0c;而是你基本上很难访问了。这里介绍个便宜且免费的AI聊天插件&#xff0c;一样可以很棒。永久免费且不限制次数&#xff0c;有这好事&#xff1f;且听下文分解。 前言 虽然GPT 是用不了&#xff0c;推荐下国内的一些大模型&#xff0c…

Win10下pytorch3D安装方法,本人亲测可用

本人的电脑配置如下&#xff1a; GPU&#xff1a;GTX 1050TiCUDA&#xff1a;11.1python&#xff1a;3.8pytorch&#xff1a;1.9.0pytorch3d&#xff1a;0.7.1NVIDIA CUB&#xff1a;cub-1.9.10-1 目录 1.版本确认 2.下载cub 3.下载pytorch3d 4.下载VSC2019 5.编译pytorch…