ML-czy的小组任务4
1.将一维数组转化为二维数组:
链接: 题目链接
这道题其实就是按要求将数组元素存储,首先保证给出的行与列与原数组元素相等,不等则将返回值为零,相等就通过循环将数据存储进新数组,不过力扣数组相关的题需要进行开辟内存空间的操作,这里具体看代码解释:
int** construct2DArray(int* original, int originalSize, int m, int n, int* returnSize, int** returnColumnSizes){int **arr;if((m * n)!=originalSize){*returnSize=0;//返回值定为零return arr;//空数组}int i,j,index=0;//index主要是让原数组进行遍历*returnSize = m;//返回行数*returnColumnSizes = (int*)malloc(sizeof(int) * m);arr = (int **)malloc(sizeof(int *)*m);//开辟数组列空间for(i=0;i<m;i++){(*returnColumnSizes)[i] = n;//力扣写法,列的大小表示arr[i] = (int*)malloc(sizeof(int) * n);//一维数组开辟空间for(j=0;j<n;j++){arr[i][j] = original[index++];}}return arr;
}
2.多个数组求交集:
链接: 题目链接
这道题就是在多维数组中找元素相同的放在新数组里,比如在二维数组中的元素就是一维数组,所以有这样一个思路,可以先统计出二维数组中每个元素出现的次数,如果与其长度相等的话就说明二维数组中每个元素都存在它,代码如下:
int* intersection(int** nums, int numsSize, int* numsColSize, int* returnSize){int arr[1001]={0};int *ins = (int*)malloc(sizeof(int)*1001);//这里我试了1001可以ac,像901就过不了int i,j,index=0;for(i=0;i<numsSize;i++){for(j=0;j<numsColSize[i];j++)//列的大小表示{arr[nums[i][j]]++;//这里统计二维数组中每个元素出现次数}}for(i=0;i<1001;i++){if(arr[i]==numsSize)//与二维数组大小相等的就满足条件{ins[index++]=i;//存进新数组中}}*returnSize = index;//返回新数组长度return ins;
}
3.移除链表元素:
链接: 题目链接
这道题与普通的删除节点数据不一样,因为假如有两个结点需要删除,普通的方法只会删除一个结点数据,所以这次可以采用递归或递推的方法去解决,代码如下:
//递归法:
struct ListNode* removeElements(struct ListNode* head, int val){ if (head == NULL) {return head;} head->next = removeElements(head->next, val);//直接将 removeElements(head->next, val) 的结果存放到 head->next 中,再判断 head->val 是否等于 val。return head->val == val ? head->next : head;
}
//迭代法:
struct ListNode* removeElements(struct ListNode* head, int val){while (head != NULL && head->val == val) {head = head->next;//当只有一个数据时}if (head == NULL) {return head;}struct ListNode* p = head;while (p->next != NULL) {if (p->next->val == val) {p->next = p->next->next; //删除结点值为val的结点} else {p = p->next;//遍历}}return head;
}
4.二叉树展开为链表:
链接: 题目链接
这道题根据题目描述,二叉树的先序遍历,先访问根结点,然后由左子树到右子树遍历就好,代码如下:
void flatten(struct TreeNode* root){if(root){struct TreeNode* rightChild = root -> right;flatten(root -> left);root -> right = root -> left;//把左子树结点放在右子树上root -> left = NULL;//把左子树结点置空while(root -> right){root = root -> right;}flatten(rightChild);root -> right = rightChild;}
}
ML-czy的小组任务4相关推荐
- 一文告诉你,NIPS 2017有多火爆 | 附PPT、视频、代码大总结
原文来源:Medium.GitHub 作者:TarasSereda 「雷克世界」编译:嗯~阿童木呀.KABUDA 今年的NIPS是一场盛大的.极富教育意义和探索精神的.魅力十足且人数众多的会议. 第一 ...
- 90 后美女学霸:出身清华姚班,成斯坦福 AI 实验室负责人高徒!
出品 | AI 科技大本营(ID: rgznai100) 今天给大家介绍一位斯坦福博士毕业生的传奇人生,她的一篇名为"Neural Reading Comprehension and Bey ...
- 90后美女学霸:出身清华姚班,成斯坦福AI实验室负责人高徒
https://www.toutiao.com/a6663025237497479692/ 出品 | AI科技大本营(ID: rgznai100) 今天给大家介绍一位斯坦福博士毕业生的传奇人生. 她的 ...
- ml不是内部或外部命令_美国飞机制造商波音公司采用VR技术训练宇航员 ; Snap Lens Studio推出支持自定义ML驱动的Snapchat镜头...
看日报是个好习惯! Valve宣布为Steam开发者推出OpenXR预览版本,支持跨平台VR/AR内容开发 Valve在为Steam游戏开发人员迎接OpenXR面世的准备方面迈出了重要的一步,开发 ...
- 一天狂揽2000+星,微软面向初学者ML课程来了,完全免费
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源丨机器之心 编辑丨极市平台 导读 适合所有初学者的经典机器学习课 ...
- 为ML开发、部署提供靠谱的系统工程方法,NASA、牛津、微软等多家机构提出MLTRL框架
MLTRL 框架具备鲁棒性好.可靠性强等优点,并定义了一种通用语言,支持不同团队和组织的人员协同工作. 选自arXiv,作者:Alexander Lavin等,机器之心编译,编辑:陈萍 使用现代工具可 ...
- 不再受限于数据集和硬件,下一代 ML 软件如何构建?
在不久以前,数据科学团队需要一些东西来有效地利用深度学习: 一种新颖的模型结构,这个结构可能是内部设计的 访问大型且.专有的数据集 大型模型训练的硬件或资金 这些条件将深度局限于满足它们的少数项目中, ...
- ML之XGBoost:XGBoost参数调优的优秀外文翻译—《XGBoost中的参数调优完整指南(带python中的代码)》(三)
ML之XGBoost:XGBoost参数调优的优秀外文翻译-<XGBoost中的参数调优完整指南(带python中的代码)>(三) 目录 3. 参数微调案例/Parameter Tunin ...
- 深度学习笔记第三门课 结构化机器学习项目 第一周 机器学习(ML)策略(1)...
本文是吴恩达老师的深度学习课程[1]笔记部分. 作者:黄海广[2] 主要编写人员:黄海广.林兴木(第四所有底稿,第五课第一二周,第三周前三节).祝彦森:(第三课所有底稿).贺志尧(第五课第三周底稿). ...
- ai/ml_您本周应阅读的有趣的AI / ML文章(8月9日)
ai/ml 分析与意见 (ANALYSIS AND OPINION) I want to start my weekly compilation list of AI/ML articles with ...
最新文章
- Git忽略已经被提交的文件
- 【大会】声音叫醒耳朵,语音连接网络
- “睡服”面试官系列第十七篇之Reflect(建议收藏学习)
- [10] ADB 修改设置
- 信息学奥赛C++语言: 直方图
- SqlServer 更新/新增一条语句,返回其中某一列的值 inserted,@@IDENTITY()
- JavaScript的类型转换
- URL重定向,rewrite命令
- 微信活动报名源码php,fb1357 Thinkphp活动报名发布微信小程序源码 聚会活动报名小程序含说明...
- Mac 上的系统监控工具,可以实时监控系统的 CPU 使用率、内存使用率、硬盘使用、网速、电池等信息
- 十六、 Interpreter 解释器(行为型模式)
- 三招教你如何搞定将qlv格式的腾讯视频转换为mp4格式
- 领域驱动架构(DDD)建模中的模型到底是什么? 1
- xdm,程序员外包能干吗?
- ERP2021青岛理工信管期末考试重点
- 数值分析笔记_3 埃尔米特插值
- 一步一步在 Windows 10 用 visual studio 2019 编译 zmqpp 4.2.0 版
- 视频文件转换器有哪些?什么视频文件转换器好用?
- MarkdownPad 2 Pro 注册码
- 汉字转换拼音或拼音首字母
热门文章
- fuchsia appmgr分析
- ios13短信如何转移到android,iOS13加入全新数据迁移功能,无需网络也能转移旧手机数据...
- 7-13 大家一起来玩游戏 (20 分)
- 线性代数:如何求特征值和特征向量
- 大学生最好用搜题的APP,个人开发的,吊打一切搜题软件
- 超越,由此开启——2019甲骨文云大会在上海盛大开幕!
- 共识算法 —— PoA
- 软件完整开发过程,以及项目的部署(精简)
- linux下查找占空间大的文件,Linux中查找当前目录下占用空间最大的前10个文件
- SAP ALV报表开发实战案例(三)