3.28学习总结

完成分割回文串的算法题,难点主要在如何去分割,靠什么去分割字符串

复制代码
int a(char arr[]){
    int i,j;
    int len=strlen(arr);
    for(i=0,j=len-1;i<j;i++,j--){
        if(arr[i]!=arr[j]) return 0;
    }
    return 1;
 }
 char **path;
 int pathtop;
 char***reasult;
 int*ansize;
 int count;
 void copy(){
    char**tempth=(char**)malloc(sizeof(char*)*pathtop);
    int i;
    for(i=0;i<pathtop;i++){
        tempth[i]=path[i];
    }
    reasult[count]=tempth;
    ansize[count++]=pathtop;
 }
 char*cutstring(char*str,int startindex,int endindex){
    char*temp=(char*)malloc(sizeof(char)*(endindex-startindex+2));
    int i;
    int index=0;
    for(i=startindex;i<=endindex;i++){
        temp[index++]=str[i];
    }
    temp[index]='\0';
    return temp;
 }
 void backtracking(char*s,int startindex,int size){
    if(startindex>=size){
      copy();
      return;
    }
    for(int i=startindex;i<size;i++){
        char*temp=cutstring(s,startindex,i);
        if(a(temp)){
            path[pathtop++]=temp;
        }else {
            continue;
        }
        backtracking(s,i+1,size);
        pathtop--;
    }
 }
char*** partition(char* s, int* returnSize, int** returnColumnSizes){
             int len=strlen(s);
             char*** partition(char* s, int* returnSize, int** returnColumnSizes);
             path=(char**)malloc(sizeof(char*)*len);
             reasult=(char***)malloc(sizeof(char**)*40000);
             ansize=(int*)malloc(sizeof(int)*40000);
             pathtop=0;
             count=0;
             backtracking(s,0,len);
             *returnSize=count;
             *returnColumnSizes=(int*)malloc(sizeof(int)*(*returnSize));
             for(int i=0;i<*returnSize;i++){
                (*returnColumnSizes)[i]=ansize[i];
             }
             return reasult;
}

继续跟着写Java的拼图小游戏的项目,感觉对Java的使用更清晰了

相关推荐
noipp6 小时前
推荐题目:洛谷 P10907 [蓝桥杯 2024 国 B] 蚂蚁开会
c语言·c++·算法·编程·洛谷
程序员二叉7 小时前
【JUC】线程池全套深度详解|参数|流程|拒绝策略|调优|异常处理
java·开发语言·jvm·算法·面试·juc
青山木7 小时前
Hot 100 --- 轮转数组
java·数据结构·算法
徐小夕7 小时前
Loop Engineering 深度解析与实战指南(全网最全)
前端·算法·github
北域码匠8 小时前
SHA-1算法:安全哈希原理与应用解析
算法·c#·哈希算法
袁小皮皮不皮9 小时前
1.HCIP BFD 学习笔记(优化版)
服务器·网络·笔记·网络协议·学习·智能路由器·ip
手写码匠9 小时前
手写 GraphRAG:从零实现图增强检索增强生成系统
人工智能·深度学习·算法·aigc
装不满的克莱因瓶9 小时前
【自动驾驶领域】学习 Cityscapes 数据集——城市街景语义理解的标准基准
人工智能·pytorch·python·深度学习·学习·机器学习·自动驾驶
BomanGe19 小时前
NSK重载高刚性滚珠丝杠技术详解
经验分享·算法·规格说明书
Matrix_1110 小时前
手机里的计算摄影:广角形变校正算法
人工智能·算法·智能手机·计算摄影