数据结构和算法是程序员向架构师范的内功心法和基本功底。无论从事人工智能还是其它计算机科学领域,掌握扎实的数据结构和算法设计c 数据结构与算法,往往会使我们在编程和实际开发中起着重大助力!今天给大家推荐一份不错的数据结构与算法学习资源。全程源码实现!
各位可爱的同学们好,现在已经为大家准备好超级精典的项目实战课程c 数据结构与算法,希望可以帮助大家提高编程实战水平c 数据结构与算法-数据结构与算法必备50道习题集(C语言版),点击链接就可以学习啦!!!
C语言入门指南系列-学习视频教程-腾讯课堂
C语言经典编程100例实战-学习视频教程-腾讯课堂
C语言与数据结构算法-学习视频教程-腾讯课堂
C++语言入门指南系列-学习视频教程-腾讯课堂
不管百度、阿里、腾讯、华为等大厂去面试,算法设计是必考题,希望50道题能够对你有所帮助。具体必备50道分为十五种类型如下(每道代码在后面):
一、数组
二、链表
三、栈
四、队列
五、递归
六、排序
七、二分查找
八、散列表
九、字符串
十、二叉树
十一、堆
十二、图
十三、回溯
十四、分治
十五、动态规划
====================================================
问题1:实现一个支持动态扩容的数组(参考源码如下):
#
#
int main(int argc, char* argv[])
{
int num, i, ; //num是小组人数
("n【输入学生的人数】:");
scanf("%d", &num);
float score = (float)(num * (float));
("请输入学生成绩:n");
//输入num名同学的成绩
for (i = 0; i < num; i++)
scanf("%f", score + i); //&score[i]
("n【请输入要增加多少名学生?】:");
scanf("%d", &); //是需要增加的人数
//下半部分是实现对数组的扩容,并输入另外的成绩
float = (float)((num + ) * (float));
("请输入学生成绩:n");
//输入num名同学的成绩
for (i = 0; i < num; i++)
[i] = score[i];
for (i = 0; i < ; i++)
scanf("%f", + num + i);
free(score);
score = ;
num = num + ;
("nn【共计%d名学生,成绩分别为】n", num);
for (i = 0; i < num; i++)
("%.2f ", score[i]);
("n");
free(score);
0;
}
【运行结果】