Java实现LeetCode_0009_PalindromeNumber
package javaLeetCode_primary;
import java.util.Scanner;
import java.util.Stack;
public class PalindromeNumber_9 {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
System.out.println("Please input the integer:");
int x=input.nextInt();
System.out.println(isPalindrome_3(x));
}// end main()
/**
* Data is stored on a stack.
*/
/*
* Test data:
* 121
* 1221
* -121
* 10
* 1221
* */
public static boolean isPalindrome_1(int x) {
String str = Integer.toString(x);
char[] cha = str.toCharArray();
Stack <Character>stack = new Stack<Character>();
boolean isPalindrome = true;
for(int i=0;i<str.length()/2;i++) {
stack.push(cha[i]);
}//end for
int temp=0;
if(str.length()%2==0) {
temp= str.length()/2;
}else {
temp = str.length()/2+1;
}//end if
for(int i=temp;i<str.length();i++) {
if(stack.pop()==cha[i]) {
isPalindrome = true;
}else {
isPalindrome = false;
break;
}
}//end for
return isPalindrome;
}// end isPalindrome()
/**
* Use the Conventional thinking.
* */
public static boolean isPalindrome_2(int x) {
String str = Integer.toString(x);
char[] cha = str.toCharArray();
boolean isPalindrome = true;
int temp = str.length();
for(int i=0;i<temp/2;i++) {
if(cha[i]==cha[temp-i-1]) {
isPalindrome = true;
}else {
isPalindrome = false;
break;
}//end if
}//end for
return isPalindrome;
}// end isPalindrome()
/**
* Answer online
* Use the MathMetical method.
* */
public static boolean isPalindrome_3(int x) {
boolean isPalindrome = false;
int temp = 0;
if(x < 0 || (x % 10 == 0 && x != 0)) {
return isPalindrome;
}//end if
while(temp<x) {
temp = (temp*10)+ (x%10);
x /= 10;
}//end while()
if(temp/10==x||temp == x)
isPalindrome = true;
return isPalindrome;
}// end isPalindrome()
}
Java实现LeetCode_0009_PalindromeNumber的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
随机推荐
- webpack4多页应用HTML按需添加入口依赖chunk【html-webpack-plugin & html-inline-entry-chunk-plugin】
在webpack4中使用splitChunkPlugin时,根据需要将公共代码拆分为多个依赖后,需要在创建htmlWebpackPlugin时候按需引入对应入口文件依赖的chunk.但是html-we ...
- webpack指南(六)命令行环境配置
webpack 命令行环境配置中,通过设置 --env 可以使你根据需要,传入尽可能多的环境变量.在 webpack.config.js 文件中可以访问到这些环境变量. webpack --env.N ...
- context的简单应用
数据上传 context.setAttribute protected void doGet(HttpServletRequest req, HttpServletResponse resp) thr ...
- SpringBoot切面Aop的demo简单讲解
前言 本篇文章主要介绍的是SpringBoot切面Aop的demo简单讲解. SpringBoot Aop 说明:如果想直接获取工程那么可以直接跳到底部,通过链接下载工程代码. 切面(Aop) 一.概 ...
- scrapy中间件之下载中间件使用(网易新闻爬取)
scrapy项目中的middlewarse.py中间件 爬虫中间件:目前先不介绍 下载中间件(需要在settings.py中开启) (1)请求处理函数:process_request(self, re ...
- 03 返回静态文件的高级web框架
03 返回静态文件的高级web框架 服务器server端python程序(高级版): import socket server=socket.socket() server.bind(("1 ...
- React安装及使用
学习React之前.你可能需要学习: Html5.Css3.React.Antd.js. Html5的学习网站:http://www.w3school.com.cn/ Css3学习网站:http:// ...
- package.json中^,~的区别
https://blog.csdn.net/peaceoncemore/article/details/79195206 "devDependencies": { " ...
- Hyperledger Fabric——balance transfer(四)安装和实例化chaincode
详细解析blance transfer示例的安装(install)和实例化(Instantiate)链码(chaincode)的过程.安装chaincode会根据本地的链码文件生成chaincode镜 ...
- 项目中 SimpleDateFormat 的正确使用
项目中 SimpleDateFormat 的正确使用 日常开发中,我们经常需要使用时间相关类,说到时间相关类,想必大家对 SimpleDateFormat 并不陌生.主要是用它进行时间的格式化输出和解 ...