下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

Java中如何打印等腰三角形代码

作者:课课家教育     来源: http://www.kokojia.com点击数:1526发布时间: 2016-03-09 16:53:46

标签: Java语言Java程序Java设计

大神带你学编程,欢迎选课

  打印等腰三角形代码

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<5;z++){
      System.out.print("* ");
      }
      System.out.println();
    }
  }
}

Java中如何打印等腰三角形代码_Java语言_Java程序_课课家

  折半查找代码:

  //练习:给一个数值,要求插入给定数组中,并且保证插入后数组按一定的顺序排列

  
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("关键字存在在数组中的第"+(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、将对应的中间索引值与关健值比较

  /*

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 for(int y=x+1;y if(arr[x]>arr[y]){
      swap(arr,x,y);
    }
  }
}

  //冒泡排序:每次比较相邻的元素,满足条件的换位。每一层循环之后,最大值回到元素的顶端,因此比较时内层循环数组值减少一位。

public static void bobleSort(int arr[]){
  for(int x=0;x for(int y=0;y 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 if(i != arr.length-1){
    System.out.print(arr[i]+",");
    }else{
    System.out.print(arr[i]);
    }
}
System.out.print("]");
System.out.println();
赞(16)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程