首页 > 编程语言 >算法-字符串

算法-字符串

时间:2024-02-24 11:22:35浏览次数:26  
标签:right temp int 算法 数组 字符串 left

1. 反转字符串(LeetCode 344)

题目:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
思路:双指针,左边和右边对应位置的依次交换

class Solution {
    public void reverseString(char[] s) {
        //两个指针从两端到中间,依次交换
        int left = 0;
        int right = s.length - 1;
        char temp;
        while(left < right){
            temp = s[left];
            s[left] = s[right];
            s[right] = temp;
            left++;
            right--;
        }
    }
}

2.

标签:right,temp,int,算法,数组,字符串,left
From: https://www.cnblogs.com/hifrank/p/18030874

相关文章

  • C# 的布尔类型和字符串类型(模板字符串)
    //布尔类型bollboolb=false;b=1==1;//trueboolb1=1>23;//false//值类型:在代码中初始化类型的时候没有赋值但是系统会自动赋值的叫值类型//byteshortint(default0)longfloatdou......
  • KMP 字符串搜索算法
    KMP字符串搜索算法是Knuth、Morris、Pratt三位在类似的时间段内一起发明的一种字符串搜索算法,该算法的主要原理是利用待查找子串中的某些信息,在匹配失败时能够减少回退的步数算法原理假设现在有一个待搜索的字符串ABABAC,如何利用现有的字符串实现在字符不匹配时尽可能向后调......
  • 代码随想录算法训练营day03 | leetcode 203. 移除链表元素、707. 设计链表、206. 反转
    目录题目链接:203.移除链表元素-简单题目链接:707.设计链表-中等题目链接:206.反转链表-简单题目链接:203.移除链表元素-简单题目描述:给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val==val的节点,并返回新的头节点。示例1:输入:head=[1,2,6......
  • 【字符串】
    首先创建字符串可以使用单引号、双引号、三单引号和三双引号,其中三引号可以多行定义字符串,Python不支持单字符类型,单字符在Python中也是作为一个字符串使用。我们定义一个变量str='python'语句,它在计算机中的执行顺序是先在内存中创建一个字符串Python,在程序栈寄存器中......
  • 综合练习字符串2
    思路2......
  • 代码随想录 day59 两个字符串的删除操作 编辑距离
    两个字符串的删除操作两种思路如果是以最长公共子序列去理解求出这个子序列长度然后原长减一下就行如果是直接正面求解就是如下解法递推式很好理解初始化意思是当一个串为0长度时需要操作另一个字符串长度次也就是直接赋予下标编辑距离dp[i-1][j-1]+1意......
  • 综合练习字符串1
    ALT+回车:将一句代码分割成两句代码charAt()方法的结果是字符串类型‘1’、‘2’···,需要变成数字1、2···,利用ASCii表(字符串‘0’对应ascii为48,所以数字0=字符串‘0’-48=48-48=0)思路2jdk12后,switch简化......
  • 2024牛客寒假算法基础集训营6
    2024牛客寒假算法基础集训营6比赛链接打一半就收拾行李了,不想开学呜呜呜(应该是lzgg出的题)A.宇宙的终结思路数据不大才100,所以模拟完全可以过去Code#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong#defineall(x)x.begin()+1,x.end()std::vector<......
  • 代码随想录算法训练营第二十六天| 39. 组合总和 40.组合总和II 131.分割回文串
    组合总和题目链接:39.组合总和-力扣(LeetCode)思路:依然一是套用回溯模板,但是我们这里用回溯的是i而不是i+1,因为元素可以重复使用,注意for循环里if(sum(path)<=target)的等号不能少。classSolution{public:vector<int>path;vector<vector<int>>result;intsu......
  • 2024牛客寒假算法基础集训营6
    A.宇宙的终结Code(伪代码):voidsolve(){intleft,right;cin>>left>>right;autocheck1=[&](intn){for(inti=2;i<=sqrt(n);i++){if(n%i==0){returnfalse;}......