同构字符串

ops/2024/9/24 10:01:17/

给定两个字符串 s 和 t ,判断它们是否是同构的。

如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。

每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。

示例 1:

输入:s = "egg",t = "add"输出:true

示例 2:

输入:s = "foo", t = "bar"输出:false

示例 3:

输入:s = "paper", t = "title"输出:true
#include <stdio.h>
#include <stdbool.h>
#include <string.h>bool isIsomorphic(char* s, char* t)
{if(strlen(s) != strlen(t)){return false;//如果两个字符串长度不相同,直接返回错误}for(int i = 1;i < strlen(s);i++)//i从1开始循环{int flag = 0;//设置一个标志int s_t = 0;//s字符串的当前位置下标int t_t = 0;//t字符串的当前位置下标for(int j = i - 1;j >= 0;j--)//从i-1到0一一遍历{if(s[j] == s[i]){s_t = j;flag = 1;//如果某个s[j] == s[i],将标志设为1,s的下标改为j}if(t[j] == t[i]){t_t = j;flag = 1;//同时检测t字符串,如果某个t[j] == t[i],将标志设为1,t的下标改为j}if(flag == 1 && s_t == t_t)//双重判断,如果都符合,可以提前跳出循环{break;}}if(s_t != t_t)//最后一轮循环后,如果下表不相同,返回错误{return false;}}return true;//否则返回正确
}int main()
{char ptr[] = "alpkop";char str[] = "pdgfyg";printf("%d\n",isIsomorphic(ptr, str));return 0;
}

 


http://www.ppmy.cn/ops/93287.html

相关文章

Django中的Q对象

文章目录 Django中的Q对象三种使用方式Q对象中常用的属性或方法 Django中的Q对象 from django.db.models import Q在Django框架中&#xff0c;Q 对象是 django.db.models.Q 的一个实例&#xff0c;它用于创建复杂的查询表达式。 Q 对象允许你构建包含多个条件的查询&#xff0c…

【网络】代理服务器

目录 正向代理 反向代理 个人主页&#xff1a;东洛的克莱斯韦克-CSDN博客 正向代理 正向代理&#xff08;Forward Proxy&#xff09;是一种常见的网络代理方式&#xff0c;它位于客户端和目标 服务器之间&#xff0c;代表客户端向目标服务器发送请求。正向代理服务器接收客户…

【深度学习】卷积神经网络(CNN)简介

文章目录 1. 前言2. 什么是卷积神经网络&#xff08;CNN&#xff09;&#xff1f;2.1 卷积神经网络&#xff08;CNN&#xff09;的背景2.2 CNN 如何运作&#xff1f; 3. 人工神经元在 CNN 中的作用4. CNN 中的特征提取5. 什么是池化层&#xff1f;6. 卷积神经网络&#xff08;C…

2024年8月12日(LVS)

1、描述以及工作原理 &#xff08;1)什么是LVS linux virtural server的简称,也就是linxu虚拟机服务器,这是一个由章文嵩博士发起的开 源项目,官网是http://www.linuxvirtualserver.org,现在lvs已经是linux内核标准的一 部分,使用lvs可以达到的技术目标是:通过Linux达到负载均…

Apple 智能基础语言模型

Introducing Apple’s On-Device and Server Foundation Models technical details June 10, 2024 在2024年的全球开发者大会上&#xff0c;苹果推出了Apple Intelligence&#xff0c;这是一个深度集成到iOS 18、iPadOS 18和macOS Sequoia中的个人智能系统。Apple Intelligen…

kotlin简介

Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言&#xff0c;被称之为 Android 世界的Swift&#xff0c;由 JetBrains 设计开发并开源。 Kotlin 可以编译成Java字节码&#xff0c;也可以编译成 JavaScript&#xff0c;方便在没有 JVM 的设备上运行。 在Google I/O 2017…

在IIS上部署ASP.NET Core Web API和Blazor Wasm应用程序的完整指南

摘要 本文将引导你通过在IIS上部署ASP.NET Core Web API和Blazor WebAssembly应用程序的步骤。从环境准备到部署完成&#xff0c;我们将覆盖所有关键点。 1. 环境准备 安装IIS安装.NET Core Hosting Bundle创建ASP.NET Core Web API项目创建Blazor WebAssembly项目 2. 开发…

宠物健康新守护:智能听诊器的家庭应用

宠物已成为我们情感的寄托和生活的一部分&#xff0c;为宠物的健康守护带来了科技的温度。 科技与关怀结合 这款智能听诊器&#xff0c;以其科技感和关怀精神&#xff0c;为宠物的健康监测提供了全新的视角。 家庭友好设计&#xff1a;考虑到家庭使用环境&#xff0c;智能听…