LeetCode learning records based on Java,Kotlin,Python...Github 地址

序号对应 LeetCode 中题目序号

1 两数之和

给定一个整数数列,找出其中和为特定值的那两个数,你可以假设每个输入都只会有一种答案,同样的元素不能被重用;

  • Java 语言实现
    public int[] twoSum(int[] nums, int target) {
int i, j;
for (i = 0; i < nums.length; i++) {
for (j = i + 1; j < nums.length; j++) {
int sun = nums[i] + nums[j];
if (target == sun) {
return new int[]{i, j};
}
}
}
return new int[]{-1, -1};
}
  • Kotlin 语言实现
    fun twoSum(nums: IntArray, target: Int): IntArray {
var sum: Int
for (i: Int in nums.indices) {
for (j: Int in i+1 until nums.lastIndex+1) {
sum = nums[i] + nums[j]
if (target == sum) {
return intArrayOf(i,j)
}
}
}
return intArrayOf(-1,-1)
}

7 给定一个范围为 32 位 int 的整数,将其颠倒

  • Java 语言实现
    public static int reverse(int x) {
int result;
int startLen = 0;
String str = String.valueOf(x);
if (str.charAt(0) == '-') {
startLen = 1;
}
if (str.length() == 1) {
return x;
}
int lastLen = str.length() - 1;
String readStr = "";
while (lastLen >= startLen) {
readStr = readStr + str.charAt(lastLen);
lastLen--;
}
try {
result = Integer.parseInt(readStr);
}catch (NumberFormatException e){
return 0;
}
return startLen == 0 ? result : result * (-1);
}

*Kotlin 语言实现

    fun reverse(x: Int): Int {
var startLen = 0
if (x < 0) {
startLen = 1
}
val str = x.toString()
if (str.length == 1) {
return x
}
var lastLen = str.length - 1
var readStr = ""
while (lastLen >= startLen) {
readStr += str[lastLen]
lastLen--
}
return try {
if (startLen == 0) {
readStr.toInt()
} else {
readStr.toInt() * (-1)
}
} catch (e: NumberFormatException) {
0
}
}

使用Java+Kotlin双语言的LeetCode刷题之路(一)的更多相关文章

  1. 使用Java+Kotlin双语言的LeetCode刷题之路(三)

    BasedLeetCode LeetCode learning records based on Java,Kotlin,Python...Github 地址 序号对应 LeetCode 中题目序号 ...

  2. 使用Java+Kotlin双语言的LeetCode刷题之路(二)

    BasedLeetCode LeetCode learning records based on Java,Kotlin,Python...Github 地址 序号对应 LeetCode 中题目序号 ...

  3. #leetcode刷题之路28-实现 strStr() 函数

    实现 strStr() 函数.给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始).如果不存在,则返回 ...

  4. python -- leetcode 刷题之路

    第一题 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例: 给定 nums = [2, 7, 11, 15], tar ...

  5. #leetcode刷题之路3-无重复字符的最长子串

    给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc" ...

  6. leetcode 刷题之路 64 Construct Binary Tree from Inorder and Postorder Traversal

    Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...

  7. #leetcode刷题之路50-Pow(x, n)

    实现 pow(x, n) ,即计算 x 的 n 次幂函数.示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100 #inclu ...

  8. #leetcode刷题之路49-字母异位词分组

    给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串.示例:输入: ["eat", "tea", "tan" ...

  9. #leetcode刷题之路48-旋转图像

    给定一个 n × n 的二维矩阵表示一个图像.将图像顺时针旋转 90 度.说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像.示例 1:给定 matrix ...

随机推荐

  1. Sublime Text 3安装及常用插件安装

    一.Sublime3下载 1.百度搜索Sublime3 download,选择进入下载页面 2.我选择下载Win64位安装程序 二.Sublime3安装 傻瓜式安装,一直点下一步即可. 三.Subli ...

  2. <table>标签总结(colspan跨列 ,rowspan跨行)

    table标签有些内置属性要设置: <table cellpadding="0" cellspacing="0" border="0" ...

  3. Linux基础第四课——文件操作

    文件的创建 touch sudo touch 文件1 文件2 文件3 #支持批量创建文件 sudo rm -f 文件1 文件2 文件3 #支持批量创建 也支持批量删除 echo '谁动谁输,对不起我输 ...

  4. centos7下安装docker(6镜像总结)

    学了很长时间的镜像了,从镜像的分层,缓存的特性,到制作镜像:通过docker commint和docker build创建,再到制作dockerfile以及dockerfile中常用的参数FROM,M ...

  5. 在eclipse中,使用spring tool suite配置spring环境

    本人第一次接触spring,在经过一天的努力之后,终于成功配置了spring环境. 使用spring tool suite配置 1.打开eclipse,选择help->Eclipse marke ...

  6. CSS3中和动画有关的属性transform、transition 和 animation

    CSS3中和动画有关的属性有三个  transform. transition 和 animation.下面来一一说明:        transform     从字面来看transform的释义为 ...

  7. 第一行代码 -3-2 软件也要拼脸蛋-UI界面-更强大的滚动条-RecyclerView

    简述教程:https://www.jianshu.com/p/4fc6164e4709 一 基础准备 1 添加RecyclerView控件引用库文件 2 总布局添加RecyclerView控件 3 R ...

  8. 深入浅出的webpack构建工具---AutoDllPlugin插件(八)

    深入浅出的webpack构建工具---AutoDllPlugin插件(八) DllPlugin插件能够快速打包,能把第三方依赖的文件能提前进行预编译打包到一个文件里面去.提高了构建速度.因为很多第三方 ...

  9. 使用verdaccio 搭建npm私有仓库

    使用verdaccio 搭建npm私有仓库 1. 为什么要搭建私有的npm仓库?    随着公司的业务越来越复杂,项目迭代速度也越来越快,那么项目间的常用的业务代码共享变得非常之有必要.但是对于公司的 ...

  10. linux 基础 用户操作

    命令: 1. whoami 2.su 用户名 3.useradd 用户名 4.passwd 用户名