今天学的东西太散了,感觉还没摸着头脑,但目前要解决的问题是map这个数据结构。今天学习的时候看相关博客,大部分都不是C语言的实现,而且又提到映射,二叉树的一种红黑树等等。
其实还是因为在写洛谷这道题--------> ( P3613 【深基15.例2】寄包柜 ) 的时候,自己最开始是直接使用了二维数组,导致运行超时,时间复杂度大,而且有很多空间浪费。map的学习就是为了解决这个问题。
但是目前还没有解决,应该要系统的学一下,不然映射什么的都不知道很难看明白博客的意思。下一天就是把树,哈希表什么的学明白,搞清楚逻辑是什么,怎么实现,把题做出来。
把错误代码贴一下,记录一下,明天就更更改的正确代码的博客,今天主要记录。
#include<stdio.h>
int main() {long long n = 0;long long q = 0;int cao = 0;long long i, j, k;long long guizi[100000][100000] = {0};scanf("%lld%lld", &n, &q);while (q--) {scanf("%d", &cao);//放入和查询操作if (cao == 1) {//第i个柜子的第j个格子放w号的东西scanf("%lld%lld%lld", &i, &j, &k);guizi[i][j] = k;}else if (cao == 2) {scanf("%lld%lld", &i, &j);printf("%lld\n", guizi[i][j]);}}return 0;
}