打印等腰三角形代码

public class ForForTest{
public static void main(String []args){
for(int x=0;x<5;x++){
for(int y=x+1;y<5;y++){
System.out.print(" ");
}
for(int z=0;z<x;z++){
System.out.print("* ");
}
System.out.println();
}
}
} 折半查找代码: //练习:给一个数值。要求插入给定数组中,而且保证插入后数组按一定的顺序排列
public class ArrayTest2{ //数组查找数值
public static void main(String []args){
int arr[] = {1,2,3,4,5,6,7,88,9,10};
int index = getIndex(arr,8);
System.out.println("keyword存在在数组中的第"+(index+1)+"位");
}
public static int halfSeach_2(int arr[],int key){ //另外一种 折半方法。 依照索引值进行比較
int max,min,mid;
min = 0;
max = arr.length - 1;
while(min<=max){ //条件为真的时候进行比較
mid = (max+min)/2 ; //位运算 相当于除2
if(key>arr[mid])
min = mid +1 ;
else if(key < arr[mid])
max = mid -1;
else
return mid;
}
return -1;
}
//得到 该数值插入到数组中的第几位
//思路:利用折半查找,假设找到数组中有相应的数,便将该数插入到该位置,若没有找到那么返回折半索引的最小位。
public static int getIndex(int arr[],int key){
int max,min,mid;
min = 0;
max = arr.length - 1;
mid = (max + min) / 2; while(key != arr[mid]){ //当 关健值 不等于 中间值时。进行折半查找。
if(key>arr[mid])
min = mid +1 ;
else
max = mid -1;
if(min > max)
return min;
mid = (max + min)/2;
}
return mid;
}
/*
折半查找: 前提是 数组是个有序的数列
1、首先定义数组最大索引和最小索引
2、算出中间索引值
3、将相应的中间索引值与关健值比較-----> if(key>arr[mid]) min = mid+1;else if(key<arr[mid]) max = mid-1;
*/
public static int halfSeach(int arr[] , int key){
int max,min,mid;
min = 0;
max = arr.length - 1;
mid = (max + min) / 2; while(key != arr[mid]){ //当 关健值 不等于 中间值时,进行折半查找。
if(key>arr[mid])
min = mid +1 ;
else
max = mid -1;
if(min > max)
return -1;
mid = (max + min)/2; //循环中一直进行折半。 }
return mid;
}
} 排序算法的代码,包含冒泡、选择、折半排序 import java.util.*;
public class ArrayTest{
public static void main(String []args){
int []arr = {23,3,1,53,43,13,10};
//排序前
printArray(arr);
//排序
//selectSort(arr);
bobleSort(arr); //Arrays.sort(arr); //java中已经封装好的排序算法
//排序后
printArray(arr);
}
//选择排序
public static void selectSort(int []arr){
for(int x=0;x<arr.length-1;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]>arr[y]){
swap(arr,x,y);
}
}
}
}
//冒泡排序:每次比較相邻的元素,满足条件的换位。每一层循环之后,最大值回到元素的顶端。因此比較时内层循环数组值降低一位。
public static void bobleSort(int arr[]){
for(int x=0;x<arr.length-1;x++){
for(int y=0;y<arr.length-x-1;y++){ //减1 的原因是。防止数组越界。
if(arr[y]>arr[y+1]){
swap(arr,y,y+1);
}
}
}
}
//交换元素
public static void swap(int arr[],int a ,int b ){
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
//打印数组
public static void printArray(int arr[]){
System.out.print("[");
for(int i=0;i<arr.length;i++){
if(i != arr.length-1){
System.out.print(arr[i]+",");
}else{
System.out.print(arr[i]);
}
}
System.out.print("]");
System.out.println();
}
}

Java基础实例的更多相关文章

  1. JAVA基础实例(二)

    1.做一个饲养员给动物喂食物的样例体现JAVA中的面向对象思想,接口(抽象类)的用处 package com.softeem.demo; /** *@authorleno *动物的接口 */ inte ...

  2. 【Java 基础实例—Bank 项目1】

    (上图Wie任务要求的UML结构) Account.java 文件: package Banking_1; public class Account { private double balance; ...

  3. JAVA基础实例(三)--排序

    冒泡排序 是一种简单的排序算法.它反复地走訪过要排序的数列,一次比較两个元素.假设他们的顺序错误就把他们交换过来.走訪数列的工作是反复地进行直到没有再须要交换,也就是说该数列已经排序完毕. 这个算法的 ...

  4. JAVA基础实例(一)

    1写一个方法,用一个for循环打印九九乘法表 /** *一个for循环打印九九乘法表 */ public void nineNineMultiTable() { for (int i = 1,j = ...

  5. APP接口自动化测试JAVA+TestNG(二)之TestNG简介与基础实例

    前言 继上篇环境篇后,本篇主要对TestNG进行介绍,给出最最基础的两个实例,通过本文后,学会并掌握TestNG测试用例的编写与运行,以及生成美化后的报告.下一篇为HTTP接口实战(国家气象局接口自动 ...

  6. Java实例 Part1:Java基础输出语句

    ** Part1:Java基础输出语句 ** 第一部分最基础,就是标准的输出语句. ps:(目前还没熟悉这个编辑器,先尝试一下) Example01 : 输出"hello world&quo ...

  7. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  8. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  9. 【JAVA面试题系列一】面试题总汇--JAVA基础部分

    JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...

随机推荐

  1. 设计模式:命令模式(Command Pattern)

    问题 某个类中需要定义一个方法,该方法要实现的功能不确定的,需要等到程序执行该方法的时候才确定下来. 例如:定义一个计算数组的方法,可能需要遍历输出数组,也有可能是需要对数组中元素求和. 解决方案 按 ...

  2. 数据库课程设计 PHP web实现

    纪念一下自己写的东西.. 都说很垃圾就是了 直接用XAMPP做的 菜鸟网上学的PHP和HTML <!DOCTYPE html> <html> <head> < ...

  3. Maven实战读书笔记(四):Maven生命周期与插件

    Maven的生命周期是对所有构建过程的抽象和统一.包含了项目的清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等几乎所有构建步骤. Maven的生命周期是抽象的,其实际行为是由插件来完成 ...

  4. 5. 在Datadir目录外创建单独表空间

    5. 在Datadir目录外创建单独表空间 要在MySQL dadadir之外的位置创建单独表空间,请使用该子句: DATA DIRECTORY = '/path' 在目标目录中,MySQL会创建一个 ...

  5. angularJS transclude

    参考来源:彻底弄懂AngularJS中的transclusion 对以上文章进行摘录.总结和测试记录 在使用指令的时候,如果想要使用指令中的子元素,那么你就要用transclusion. 指令的DDO ...

  6. windows下安装rabbitmq以及php扩展amqp

    先安装RabbitMQ 安装Erlang  下载地址http://www.erlang.org/downloads 我选的是64位 这个根据自己情况下载,双击安装之 安装RabbitMQ 下载地址ht ...

  7. 【HIHOCODER 1033 】 交错和(数位DP)

    描述 输入 输入数据仅一行包含三个整数,l, r, k(0 ≤ l ≤ r ≤ 1018, |k| ≤ 100). 输出 输出一行一个整数表示结果,考虑到答案可能很大,输出结果模 109 + 7. 提 ...

  8. webservice学习第二天

    1 课程回顾 l 什么是webservice 远程调用技术:系统和系统之间的调用,获取远程系统里的业务数据 Webservice使用http传输SOAP协议的数据的一种远程调用技术 l Webserv ...

  9. Cow Exhibition (01背包)

    "Fat and docile, big and dumb, they look so stupid, they aren't much fun..." - Cows with G ...

  10. 【数学+枚举】OpenJ_POJ - C17J Pairs

    https://vjudge.net/contest/171652#problem/J [题意] 问有多少个正整数对(x,y),使得存在正整数p,q满足 1 <= T <= 15 1 &l ...