/给定一个仅包括大小写字母和空格 ‘ ’ 的字符串 , 返回其最后一个单词的长度
//如果不存在最后一个单词,请返回0
package day_7_1;
//给定一个仅包括大小写字母和空格 ‘ ’ 的字符串 , 返回其最后一个单词的长度
//如果不存在最后一个单词,请返回0
public class txt_1 {
public static void main(String[] args) {
//给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词请返回 0
String str = "Hello world";
System.out.println(a1(str));
}
private static int a1(String str) {
String[] arr=str.split(" ");
if (str.isEmpty()) {
return 0;
}
else {
String str1=new String(arr[arr.length-1]);
return str1.length();
}
}
}
查看数组中只出现一次的数
方法一 使用^方法,两个相同的数两次^值位0;
package day_7_1;
//只出现一次的数字
public class txt_04 {
public static void main(String[] args){
int [] nums={1,2,3,4,1,2,3};
int ans = nums[0];
if (nums.length > 1) {
for (int i = 1; i < nums.length; i++) {
ans = ans ^ nums[i];
}
}
System.out.println(ans) ;
}
}
方法二
package day_7_1;
//找出数组中出现一次的数
public class txt_04_1 {
public static void main(String[] args){
int []arr={4,2,1,2};
int num=a1(arr);
System.out.println(num);
}
public static int a1(int[] arr){
for(int i=0;i<arr.length;i++){
int count=0;
for(int j=0;j<arr.length;j++){
if(arr[i]==arr[j]){
count++;
}
if(count==1){
return arr[i];
}
}
}return -1;
}
}
加一
package day_7_1;
//加1
public class txt_jia1 {
public static void main (String[] args){
int []arr={999};
int [] newarr=a1(arr);
for (int i=0;i<newarr.length;i++){
System.out.println(newarr[i]);
}
}
public static int[] a1(int[]nums){
for(int i= nums.length-1;i>=0;i--){
if(nums[i]==9){
nums[i]=0;
}else {
nums[i]=nums[i]+1;
return nums;
}
}
int [] newarr=new int [nums.length+1];
newarr[0]=1;
return newarr;
}
}
合并两个有序数组
package day_7_1;
//合并两个有序数组
public class txt_02_03 {
public static void main(String[] args){
int []nums1 = {1,2,3,0,0,0};int m = 3;
int [] nums2 = {2,5,6}; int n=3;
a1(nums1,m,nums2,n);
}
public static void a1(int[] nums1,int m,int[]nums2,int n){
//将nums2放到nums1中
for(int i=0;i<n;i++){
nums1[m]=nums2[i];
m++;
}
//排序
for(int i=0;i<nums1.length-1;i++){
for( int j=0;j<nums1.length-1;j++){
if(nums1[j]>nums1[j+1]){
int temp=nums1[j];
nums1[j]=nums1[j+1];
nums1[j+1]=temp;
}
}
} for(int m1 :nums1){
System.out.print(m1+" ");
}
}
}
回文串
package day_7_1;
//验证是否是回文串
public class txt_05 {
public static void main(String[] args){
String string="A man , a plan , a canal : Panama";
boolean flag=a1(string);
System.out.println(flag);
}
public static boolean a1(String str){
//判断空字符
if(str==null){
return false;
}if(str.length()==0){
return true;
}
//只需考虑数字和大小写字母,将其他字符去除
String newstr=str.replaceAll("[^A-Za-z0-9]","");
//反转字符串
StringBuilder sb=new StringBuilder(newstr);
//反转数据
sb.reverse();
//转换为String
String newstrR=sb.toString();
//不区分大小写比较两个字符串
return newstr.equalsIgnoreCase(newstrR);
}
}