C语言 | Leetcode C语言题解之第6题Z字形变换

题目:

题解:

char * convert(char * s, int numRows){int n = strlen(s), r = numRows;if (r == 1 || r >= n) {return s;}int t = r * 2 - 2;char * ans = (char *)malloc(sizeof(char) * (n + 1));int pos = 0;for (int i = 0; i < r; ++i) { // 枚举矩阵的行for (int j = 0; j + i < n; j += t) { // 枚举每个周期的起始下标ans[pos++] = s[j + i]; // 当前周期的第一个字符if (0 < i && i < r - 1 && j + t - i < n) {ans[pos++] = s[j + t - i]; // 当前周期的第二个字符}}}ans[pos] = '\0';return ans;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/588465.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【airtest】自动化入门教程(四)Poco元素定位

目录 一、基础操作 1、通过属性名等方式 2、通过属性组合 3、子节点方式 4、子节点加属性组合方式 5、孙节点offspring 6、兄弟节点sibling 7、父节点parent 8、正则表达式 9、直到某个元素出现 10、直到某个元素消失 二、通过局部坐标定位 1、使用局部坐标系的cli…

【单片机家电产品--晶闸管】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 单片机家电产品–晶闸管 前言 记录学习单片机家电产品内容 已转载记录为主 一、知识点 晶体管和晶闸管之间的区别 晶体管和晶闸管之间的区别 什么是可控硅&#xff08;…

移动端 H5 实现自定义拍照界面

移动端 H5 实现自定义拍照界面 一、实现思路 手机端 H5 实现自定义拍照界面也可以使用 MediaDevices API 和 <video> 标签来实现。 首先&#xff0c;使用 MediaDevices.getUserMedia() 方法获取摄像头媒体流&#xff0c;并将其传递给 <video> 标签进行渲染。 接…

Android的图片加载框架

Android的图片加载框架 为什么要使用图片加载框架&#xff1f;图片加载框架1. Universal Image Loader [https://github.com/nostra13/Android-Universal-Image-Loader](https://github.com/nostra13/Android-Universal-Image-Loader)2. Glide [https://muyangmin.github.io/gl…

Intellij IDEA / Android studio 可持续开发笔记

Intellij 的Java/安卓工具链有着一种不可持续性&#xff0c;这种不可持续性体现在多个方面。 首先是不可持续运行。IDEA 使用时间越长&#xff0c;内存占用越大&#xff0c;从不主动释放。运行时间越长&#xff0c;日志越多&#xff0c;从不主动清理。 然后是不完整的开源&am…

8款最佳可用磁盘空间分析器工具,总有一款你能相中

序言 下面是我对可用磁盘空间分析器工具(有时称为存储分析器)的首选列表。在我的计算机上试用了其中的几个应用程序后,我可以确认这里列出的应用程序100%免费使用,并在确定硬盘驱动器、闪存驱动器或外部驱动器中的内容方面做得很好。其中一些甚至允许你直接从程序中删除文…

蓝桥杯相关算法学习(Python)

一、排序 排序算法是指将一组数据按照某种规则重新排列&#xff0c;使得数据呈现出递增或递减的顺序。常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。 1.冒泡排序 解释&#xff1a; 冒泡排序通过不断交换相邻两个元素的位置&#xff0c;使…

【Spring实战项目】SpringBoot3整合WebSocket+拦截器实现登录验证!从原理到实战

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

蓝牙串口模块、初识AT命令、WiFi模块、WiFi模块使用和编程

蓝牙模块 蓝牙模块&#xff0c;又叫做蓝牙串口模块。 串口透传技术: 透传即透明传送&#xff0c;是指在数据的传输过程中&#xff0c;通过无线的方式这组数据不发生任何形式的改变&#xff0c;仿佛传输过程是透明的一样&#xff0c;同时保证传输的质量&#xff0c;原封不动地到…

166.乐理基础-五声性调式、宫商角徵羽

如果到这五线谱还没记住还不认识的话去看102.五线谱-高音谱号与103.五线谱-低音谱号这两个里&#xff0c;这里面有五线谱对应的音名&#xff0c;对比着看 如果不认识调号去看112.五线谱的调号&#xff08;一&#xff09;、113.五线谱的调号&#xff08;二&#xff09;、114.快…

让很多人直呼“要失业”的到底是什么?--AIGC

当下&#xff0c;全球科技圈的焦点汇聚AI&#xff0c;ChatGPT还是Midjourney等生成式AI工具&#xff0c;于是在这些生成式AI工具的助推下&#xff0c;诞生了新的人工智能产业方向&#xff1a;AIGC&#xff08;AI Generated Content&#xff09;。 一、AIGC是什么&#xff1f; …

数据库加载驱动问题(java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver)

java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver 遇到此问题&#xff0c;首先检查IDEA外部库中是否有mysql数据库驱动。如下所示&#xff1a; 如果发现外部库中存有mysql数据库驱动&#xff0c;需要在数据库配置文件中查看是否设置有时区mysql8.0以上版本需要设…