栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

c语言入门100例七十七七十八八十题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c语言入门100例七十七七十八八十题

#给你一个下标从 0 开始且长度为n(n≤1000) 的整数数组 colors,其中 colors[i]表示第 i 个点的颜色。返回两个不同颜色点的最大距离。第 i个点和第 j 个点之间的距离是 abs(i−j) ,其中 abs(x)是x的绝对值。

int maxDistance(int *colors,int colorSize){
int i,j;
int maxi=0;
for(i=0;imaxi){
maxi=abs(i-j);
}
}
}
}
return maxi;
}

#给你一个下标从 0 开始且长度为 n(n≤100000) 的整数数组 colors,其中 colors[i]表示第 i 个点的颜色。返回两个不同颜色点的最大距离。第 i 个点和第 j 个点之间的距离是abs(i−j) ,其中 abs(x)是 x 的绝对值

int maxDistance(int* colors, int colorsSize){
int max=0;
int l=0,r=colorsSize-1;
while(lmax)max=l-r;
return max;
}

#要求实现一个函数,传参为一个字符串,只包含'(',')','{','}','[',']'这些字符,判断字符串是否有效。有效字符串需满足:   
(1) 左括号必须用相同类型的右括号闭合。   
(2) 左括号必须以正确的顺序闭合。

#define DataType char
#define maxn 10010

struct Stack {
  DataType data[maxn];
  int top;
}gStk;

void StackClear(struct Stack* stk) {
  stk->top = 0;
}
void StackPushStack(struct Stack *stk, DataType dt) {
  stk->data[ stk->top++ ] = dt;
}
void StackPopStack(struct Stack* stk) {
  --stk->top;
}

DataType StackGetTop(struct Stack* stk) {
  return stk->data[ stk->top - 1 ];
}
int StackGetSize(struct Stack* stk) {
  return stk->top;
}
bool StackIsEmpty(struct Stack* stk) {
  return !StackGetSize(stk);
}
bool isLeft(char c){
return c=='{'||c=='['||c=='(';
}
bool match(char l,char c){
return l=='{'&&r=='}'||l=='['&&r==']'||l=='('&&r==')';
}
bool isvalid(char *s){
int i;
StackClear(&stk);
for(i=0;s[i];i++){
if(isLeft(s[i])){
StackPushStack(&stk,s[i]);
}else{
if(StackIsEmpty(&stk)){
return false;
}
if(mach(StackGetTop(&stk),a[i])){
StackPopStack(&stk);
}else{
return false;
}
}
}
return StackIsEmpty(&stk);
}

#给你一个字符串数组 words,找出并返回数组中的第一个回文字符串 。如果不存在满足要求的字符串,返回一个 空字符串 ""。回文字符串的定义为:如果一个字符串正着读和反着读一样,那么该字符串就是一个 回文字符串 。

bool isPalindrome(char *word) {
int i;
int len = strlen(word);
for(i = 0; i < len/2; ++i) {         
if(word[i] != word[len-1-i]) {
return false;
}
}
    return true;
}

char * firstPalindrome(char ** words, int wordsSize){//这里二级指针等价于&words
for(int i = 0; i < wordsSize; ++i) {
if(isPalindrome(words[i])) {       
return words[i];
}
}
return "";
转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1033000.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号