Java实现LeetCode_0035_SearchInsertPosition
package javaLeetCode.primary;
public class SearchInsertPosition_35 {
public static void main(String[] args) {
int []nums = {1,3,5,6};
System.out.println(searchInsert_2(nums, 0));
}//end main()
/**
* Conventional idea.
* sequential search.
* */
/*
* Test Data:
* Input: [1,3,5,6], 5
* Output: 2
*
*Input: [1,3,5,6], 2
* Output: 1
*
*Input: [1,3,5,6], 7
* Output: 4
*
*Input: [1,3,5,6], 0
* Output: 0
* */
public static int searchInsert_1(int[] nums, int target) {
for(int i =0;i<nums.length;i++) {
if(nums[i]==target) {
return i;
}else {
continue;
}//end if
}//end for
for(int i=0;i<nums.length;i++) {
if(target>nums[i]) {
continue;
}else {
return i;
}//end if
}//end for
return nums.length;
}//end searchInsert()
/**
* Conventional idea.
* binary search.
* */
public static int searchInsert_2(int[] nums, int target) {
int low = 0;
int high = nums.length-1;
int mid = -1;
int returnInt = -1;
//Search the array "nums" for the "target" target.
while(low<=high) {
mid = (low+high)/2;
if(target==nums[mid]) {
returnInt = mid;
return returnInt;
}else if(target<nums[mid]) {
high = mid - 1;
}else if(target>nums[mid]) {
low = mid +1;
}//end if
}//end while
//Find insert position.
if(low>high) {
for(int i=0;i<nums.length;i++) {
if(target>nums[i]) {
continue;
}else {
returnInt = i;
return returnInt;
}//end if
}//end for
}//end if
return nums.length;
}//end searchInsert()
}//end SearchInsertPosition_35
Java实现LeetCode_0035_SearchInsertPosition的更多相关文章
- 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 ...
随机推荐
- SpringBoot读取配置文件三步走
1首先新建application.properties文件 cn.qdl.demo.url=http://localhost:8080 2写一个类包上面的配置文件,类名随便取 public class ...
- Struts2-Tiles 2.5.2 升级指南和通配符拓展
最近工程从Struts2.3.18升级Struts2.5.2导致相关联的插件都需要升级到相同版本,其中tiles的变化最大. 1.web.xml上 listener org.apache.struts ...
- css3及css技巧
左右对齐:
- elasticsearch 小总结
elasticsearch 小总结 0. 起因 距离初次写关于es的文章 https://blog.csdn.net/aca_jingru/article/details/44488703 已经过去4 ...
- __call__ 与__init__,object 参数的使用
class test1: ###有object是可读可写 def __init__(self): ##__init__表示构造函数.__call__是析构函数. self.__pravite = &q ...
- WebApiClient性能参考
1 文章目的 昨天写了走进WebApiClientCore的设计,介绍了WebApiClient的变化与设计之后,收到大家支持的.赞许的,还有好的建议和顾虑,比如WebApiClient性能怎么样,有 ...
- Apache 慢连接dos
http://neue.v2ex.com/t/108717------不实用 http://www.blogjava.net/bukebushuo/articles/293776.html http: ...
- 201771010128王玉兰《面向对象程序设计(Java)》第十周学习总结
第一部分:理论知识部分总结: (1) 定义简单泛型类: A:泛型:也称参数化类型(parameterizedtype),就是在定义类.接口和方法时,通过类型参数指 示将要处理的对象类型. B:泛型程序 ...
- UIStackView上手教程
https://www.jianshu.com/p/19fbf3ee2840 https://www.cnblogs.com/bokeyuanlibin/p/5693575.html https:// ...
- C语言qsort()函数的实现
#include <stdio.h> void qsort(void * base, int num, int width, int (*comp)(const void *, const ...