代码随想录算法训练营第八天|344.反转字符串、541.反转字符串Ⅱ、54.替换数字(卡码网是真滴不好用)
1.代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素2.代码随想录算法训练营第二天| 977. 有序数组的平方、209. 长度最小的子数组、59. 螺旋矩阵 II3.代码随想录算法训练营第四天| 203. 移除链表元素、707.设计链表、206.反转链表4.代码随想录算法训练营第五天| 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交(同160题)、142.环形链表Ⅱ5.代码随想录算法训练营第六天| 242. 有效的字母异位词、349.两个数组的交集、202.快乐数、1.两数之和6.代码随想录算法训练营第七天| 454. 两数相加Ⅱ、383.赎金信、15.三数之和、18.四数之和
7.代码随想录算法训练营第八天|344.反转字符串、541.反转字符串Ⅱ、54.替换数字(卡码网是真滴不好用)
8.代码随想录算法训练营第九天|151.反转字符串中的单词、55.右旋字符串、28.找出字符串中第一个匹配项的下标、459.重复的子字符串9.代码随想录算法训练营第十一天|232.用栈实现队列、225.用队列实现栈、20.有效的括号、1047.删除字符串中的所有相邻重复项10.代码随想录算法训练营第十二天|150.逆波兰表达式求值、239.滑动窗口最大值、347.前k个高频元素11.代码随想录算法训练营第十三天|今天量大管饱144、145、94、102、107、199、637、429、515、116、117、104、11112.代码随想录算法训练营第十四天| 226.翻转二叉树 、101. 对称二叉树、104.二叉树的最大深度 (优先掌握递归)、111.二叉树的最小深度13.代码随想录算法训练营第十五天|110.平衡二叉树、257.二叉树的所有路径、404.左叶子之和、222.完全二叉树的节点个数344简单 写个循环
1 class Solution { 2 public: 3 void reverseString(vector<char>& s) { 4 char tmp; 5 int len = s.size(); 6 for (int i = 0; i < len/2; i++) { 7 tmp = s[i]; 8 s[i] = s[len - i -1]; 9 s[len - i - 1] = tmp; 10 } 11 } 12 };
541把344拿来当函数了 分段进行循环
1 class Solution { 2 public: 3 string reverseStr(string s, int k) { 4 int len = s.size(); 5 int t = 0; 6 while (len > 0) { 7 if (len < k) { 8 reverse(s, t, len); // 调用 reverse 函数时传入子串的起始位置 t 和长度 len 9 break; 10 } 11 else if (len >= k && len < 2*k) { 12 reverse(s, t, k); // 调用 reverse 函数时传入子串的起始位置 t 和长度 len 13 break; 14 } 15 else if(len >= 2*k) { 16 reverse(s, t, k); 17 t += 2*k; 18 len -= 2*k; 19 } 20 } 21 return s; 22 } 23 24 private: 25 void reverse(string& s, int start, int k) { // 修改 reverse 函数接收整个字符串 s 的引用 26 char tmp; 27 int end = start + k - 1; // 计算子串的结束位置 28 29 for (int i = start; i < start + k/2; i++) { 30 tmp = s[i]; 31 s[i] = s[end - (i - start)]; 32 s[end - (i - start)] = tmp; 33 } 34 } 35 };
54就是做一个判断 遇见了就替换
1 #include <iostream> 2 #include <vector> 3 using namespace std; 4 5 int main() { 6 string s; 7 while (cin >> s) { 8 vector<char> result; 9 10 for (char c : s) { 11 if (c >= '0' && c <= '9') { 12 result.push_back('n'); 13 result.push_back('u'); 14 result.push_back('m'); 15 result.push_back('b'); 16 result.push_back('e'); 17 result.push_back('r'); 18 } else { 19 result.push_back(c); 20 } 21 } 22 // 将 result 转换为字符串并输出 23 cout << string(result.begin(), result.end()) << endl; 24 } 25 return 0; 26 }
自在飞花轻似梦
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!