第一题 杨辉三角
参考https://blog.csdn.net/Mus_Li/article/details/72851435
每一行的第一个数都为1
*每一行的最后一个数都为1
*当前数(非第一列和最后一列)等于上面一个数+上面一个数的左边的数
public static void yanghui(int n) {
int[][] arr = new int[n][];
//动态为列开辟空间(杨辉三角每行的列数和当前行号是相同的,如:第5行有5列)
for(int i=0;i<i;j++) {
arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
}
}
//打印输出
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j]+"\t");//不必换行
}
System.out.println();//换行
}
第二题
hello world反转成world hello,先全部反转,再单个反转。
同样可以用stringbuffer,自带reverse方法
https://blog.csdn.net/jsqfengbao/article/details/47403899
public static String reverse(String str) {
char[] array = str.toCharArray();
for(int i = 0;i<(array.length)/2;i++){
char temp = array[i];
array[i] = array[array.length-1-i];
array[array.length-i-1]=temp;
}
return String.valueOf(array);
}
public static void strswap(StringBuffer str) {
String str1 = str.reverse().toString();
System.out.println("the str now is:" + str);
String[] splitStrings = str1.split(" ");
String resultBuffer = "";
for (String s : splitStrings) {
resultBuffer = resultBuffer + reverse(s) + " ";
}
System.out.println("the str2 now is:" + resultBuffer);
}