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相关推荐

  1. 一文告诉你,NIPS 2017有多火爆 | 附PPT、视频、代码大总结

    原文来源:Medium.GitHub 作者:TarasSereda 「雷克世界」编译:嗯~阿童木呀.KABUDA 今年的NIPS是一场盛大的.极富教育意义和探索精神的.魅力十足且人数众多的会议. 第一 ...

  2. 90 后美女学霸:出身清华姚班,成斯坦福 AI 实验室负责人高徒!

    出品 | AI 科技大本营(ID: rgznai100) 今天给大家介绍一位斯坦福博士毕业生的传奇人生,她的一篇名为"Neural Reading Comprehension and Bey ...

  3. 90后美女学霸:出身清华姚班,成斯坦福AI实验室负责人高徒

    https://www.toutiao.com/a6663025237497479692/ 出品 | AI科技大本营(ID: rgznai100) 今天给大家介绍一位斯坦福博士毕业生的传奇人生. 她的 ...

  4. ml不是内部或外部命令_美国飞机制造商波音公司采用VR技术训练宇航员 ; Snap Lens Studio推出支持自定义ML驱动的Snapchat镜头...

    看日报是个好习惯!  Valve宣布为Steam开发者推出OpenXR预览版本,支持跨平台VR/AR内容开发  Valve在为Steam游戏开发人员迎接OpenXR面世的准备方面迈出了重要的一步,开发 ...

  5. 一天狂揽2000+星,微软面向初学者ML课程来了,完全免费

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源丨机器之心 编辑丨极市平台 导读 适合所有初学者的经典机器学习课 ...

  6. 为ML开发、部署提供靠谱的系统工程方法,NASA、牛津、微软等多家机构提出MLTRL框架

    MLTRL 框架具备鲁棒性好.可靠性强等优点,并定义了一种通用语言,支持不同团队和组织的人员协同工作. 选自arXiv,作者:Alexander Lavin等,机器之心编译,编辑:陈萍 使用现代工具可 ...

  7. 不再受限于数据集和硬件,下一代 ML 软件如何构建?

    在不久以前,数据科学团队需要一些东西来有效地利用深度学习: 一种新颖的模型结构,这个结构可能是内部设计的 访问大型且.专有的数据集 大型模型训练的硬件或资金 这些条件将深度局限于满足它们的少数项目中, ...

  8. ML之XGBoost:XGBoost参数调优的优秀外文翻译—《XGBoost中的参数调优完整指南(带python中的代码)》(三)

    ML之XGBoost:XGBoost参数调优的优秀外文翻译-<XGBoost中的参数调优完整指南(带python中的代码)>(三) 目录 3. 参数微调案例/Parameter Tunin ...

  9. 深度学习笔记第三门课 结构化机器学习项目 第一周 机器学习(ML)策略(1)...

    本文是吴恩达老师的深度学习课程[1]笔记部分. 作者:黄海广[2] 主要编写人员:黄海广.林兴木(第四所有底稿,第五课第一二周,第三周前三节).祝彦森:(第三课所有底稿).贺志尧(第五课第三周底稿). ...

  10. ai/ml_您本周应阅读的有趣的AI / ML文章(8月9日)

    ai/ml 分析与意见 (ANALYSIS AND OPINION) I want to start my weekly compilation list of AI/ML articles with ...

最新文章

  1. Git忽略已经被提交的文件
  2. 【大会】声音叫醒耳朵,语音连接网络
  3. “睡服”面试官系列第十七篇之Reflect(建议收藏学习)
  4. [10] ADB 修改设置
  5. 信息学奥赛C++语言: 直方图
  6. SqlServer 更新/新增一条语句,返回其中某一列的值 inserted,@@IDENTITY()
  7. JavaScript的类型转换
  8. URL重定向,rewrite命令
  9. 微信活动报名源码php,fb1357 Thinkphp活动报名发布微信小程序源码 聚会活动报名小程序含说明...
  10. Mac 上的系统监控工具,可以实时监控系统的 CPU 使用率、内存使用率、硬盘使用、网速、电池等信息
  11. 十六、 Interpreter 解释器(行为型模式)
  12. 三招教你如何搞定将qlv格式的腾讯视频转换为mp4格式
  13. 领域驱动架构(DDD)建模中的模型到底是什么? 1
  14. xdm,程序员外包能干吗?
  15. ERP2021青岛理工信管期末考试重点
  16. 数值分析笔记_3 埃尔米特插值
  17. 一步一步在 Windows 10 用 visual studio 2019 编译 zmqpp 4.2.0 版
  18. 视频文件转换器有哪些?什么视频文件转换器好用?
  19. MarkdownPad 2 Pro 注册码
  20. 汉字转换拼音或拼音首字母

热门文章

  1. fuchsia appmgr分析
  2. ios13短信如何转移到android,iOS13加入全新数据迁移功能,无需网络也能转移旧手机数据...
  3. 7-13 大家一起来玩游戏 (20 分)
  4. 线性代数:如何求特征值和特征向量
  5. 大学生最好用搜题的APP,个人开发的,吊打一切搜题软件
  6. 超越,由此开启——2019甲骨文云大会在上海盛大开幕!
  7. 共识算法 —— PoA
  8. 软件完整开发过程,以及项目的部署(精简)
  9. linux下查找占空间大的文件,Linux中查找当前目录下占用空间最大的前10个文件
  10. SAP ALV报表开发实战案例(三)