Java实现 LeetCode 535 TinyURL 的加密与解密(位运算加密)
2023-09-14 08:58:04 时间
535. TinyURL 的加密与解密
TinyURL是一种URL简化服务, 比如:当你输入一个URL https://leetcode.com/problems/design-tinyurl 时,它将返回一个简化的URL http://tinyurl.com/4e9iAk.
要求:设计一个 TinyURL 的加密 encode 和解密 decode 的方法。你的加密和解密算法如何设计和运作是没有限制的,你只需要保证一个URL可以被加密成一个TinyURL,并且这个TinyURL可以用解密方法恢复成原本的URL。
public class Codec {
private static int key=35;
// Encodes a URL to a shortened URL.
public String encode(String longUrl) {
char[] c=longUrl.toCharArray();
for (int i=0;i<c.length;i++)
{
c[i]^=key;
}
String encode = new String(c);
return "http://"+encode;
}
// Decodes a shortened URL to its original URL.
public String decode(String shortUrl) {
char[] c=shortUrl.substring(7).toCharArray();
for (int i=0;i<c.length;i++)
{
c[i]^=key;
}
return new String(c);
}
}
// Your Codec object will be instantiated and called as such:
// Codec codec = new Codec();
// codec.decode(codec.encode(url));
相关文章
- java实现打印倒直角三角形
- Java实现 LeetCode 745 前缀和后缀搜索(使用Hash代替字典树)
- Java实现 LeetCode 541 反转字符串 II(暴力大法)
- Java实现 LeetCode 535 TinyURL 的加密与解密(位运算加密)
- Java实现 LeetCode 535 TinyURL 的加密与解密(位运算加密)
- Java实现 LeetCode 521 最长特殊序列 Ⅰ(出题人:“就是喜欢看你们不敢相信那么简单,又不敢提交的样子。”)
- Java实现 LeetCode 433 最小基因变化
- Java实现 LeetCode 1227 飞机座位分配概率
- Java实现 LeetCode 152 乘积最大子序列
- Java实现 LeetCode 128 最长连续序列
- Java实现 LeetCode 84 柱状图中最大得矩形
- Java实现 LeetCode 42 接雨水
- Java实现 LeetCode_0038_CountandSay
- java实现海盗比酒量
- Java实现第九届蓝桥杯三体攻击
- Java实现莱布尼兹问题
- 【JAVA】毕向东Java基础视频教程-笔记
- 在线EXCEL绝配:SpreadJS 16.0.3 + GcExcel Java 6.0.3
- 丢手帕问题(环形链表)---Java 待优化
- java中接口的定义与实现
- java新手练习 流程控制break 标签
- 理解Java中的引用传递和值传递
- java 实现websocket的两种方式