首页 > 其他分享 >leetcode_打卡5

leetcode_打卡5

时间:2023-04-16 21:45:54浏览次数:65  
标签:arr int char indexOf 打卡 leetcode

leetcode_打卡5

题目:345. 反转字符串中的元音字母

思路:双指针

class Solution {
    public String reverseVowels(String s) {
       int n=s.length();
       char[] arr=s.toCharArray();
       int i=0;
       int j=n-1;
       while(i<j){
           while(i<n&& !yuanyin(arr[i])){
               i++;
           }
             while(j>0 && !yuanyin(arr[j])){
               j--;
           }
           if(i<j) {
               swap(arr,i,j);
               i++;
               j--;

           }
       }
       return new String(arr);
    }
    public boolean yuanyin(char ch){
        return "aeiouAEIOU".indexOf(ch)>=0;
    }
    public void swap(char[] arr,int i,int j){
        char temp=arr[i];
        arr[i]=arr[j];
        arr[j]=temp;
    }
}
定义和用法

indexOf() 方法返回值在字符串中第一次出现的位置。

如果未找到该值,则 indexOf() 方法返回 -1

indexOf() 方法区分大小写。

标签:arr,int,char,indexOf,打卡,leetcode
From: https://www.cnblogs.com/ZLey/p/17324170.html

相关文章

  • 2023.4.16编程一小时打卡
    一、问题描述:线性代数里面我们学习过n维向量,请用类vector_N来封装n维整型向量,成员如下;私有数据成员: 向量维数n,int型指针p,int型公有函数成员:无参默认构造函数,在该函数中,将n置0,将p置null;重载输入输出运算符,输入运算符,先指定向量维数,若输入为非正整数,则提示错误信息,“Error......
  • c++训练打卡(8)
    冒泡排序流程图:伪代码:源代码:#include<stdio.h>intmain(){ intN,i,j,Max; inta[100]; printf("请输入要比较的数据的个数:"); scanf("%d",&N); printf("请输入所要比较的数据:"); for(i=0;i<N;i++){ scanf("%d",&a[i]); } for(i=0;i<N;i......
  • 每日打卡-5.2
    一.问题描述小A是某工地的计算工程师。工地现有n根钢管,第i根钢管的长度为ai。现在想用这n根钢管来做一个支撑用的柱子。我么可以切割这些钢管成为更短的钢管,但是不能缝合两根钢管。为了安全起见,柱子必须用至少k根长度相同的钢管加上混凝土制成,并且要求钢管长度必须为......
  • 每日打卡
    //#include<iostream>//usingnamespacestd;//intmain()//{// longlongintA,B,C;intD;// cin>>A>>B>>D;// C=A+B;// intn=0;// longlongm=C;// while(m!=0)// {// n++;// m/=D;// }// int*a=newint[n];// for......
  • 每日打卡-5.1
    一.问题描述  小A所在的学校又迎来了一年一度的开花活动,有n名学生被评为文学优秀奖,m名学生被评为体育优秀奖。现已知两个奖项获奖同学的编号,每个同学都有唯一的编号。只有同时被评为文学优秀奖和体育优秀奖的学生才能开花,小A想知道开花的名单,请你帮他统计一下。注:1<=n,m<=1e......
  • 天天打卡一小时——3
    一.问题描述输入一个0~6的数字,转化成数字输出二.设计思路1.输入0~6中任意一个数字2.需要运用多重分支结构3.选用switch语句三.程序流程图画不出来四.代码实现#include<iostream>usingnamespacestd;intmain(){intday;cin>>day;switch(day){case0:c......
  • LeetCode 双周赛 102,模拟 / BFS / Dijkstra / Floyd
    本文已收录到AndroidFamily,技术和职场问题,请关注公众号[彭旭锐]提问。大家好,欢迎来到小彭的LeetCode周赛解题报告。昨晚是LeetCode双周赛第102场,你参加了吗?这场比赛比较简单,拼的是板子手速,继上周掉大分后算是回了一口血......
  • c++打卡第六天
    Ⅰ一、问题描述定义一个函数判断一个数是否为质数。二、设计思路①输入一个数,同时进入函数判断。②进入函数可以通过for循环判断n是否为质数③当这个数为1时,不是质数,而当这个数是23时,是质数。④可以通过循环质因数,其范围到n的开平方。三、流程图四、代码实现 #in......
  • 每日打卡 8
    #include<iostream>usingnamespacestd;#include<algorithm>intget(inta,intb){intl=1,r=1e9+1;while(l<r){intmid=l+r>>1;if(a/mid<=b)r=mid;elsel=mid+1;......
  • 建民打卡日记4.17
    一、问题描述车牌号四位中前两位相等,后两位也相等但与前两位不同,且车号恰好是一个整数的平方,求该车牌号二、设计思路1.建立双重循环穷举符合条件的车牌号2.建立内循环穷举某整数的平方3.当两者相等时,输出结果三、程序流程图四、代码实现#include<iostream>usingnames......