请问指针怎么用?比如实现个哈希表。
  • 板块灌水区
  • 楼主wrpwrp
  • 当前回复10
  • 已保存回复10
  • 发布时间2020/5/19 21:19
  • 上次更新2023/11/7 02:09:04
查看原帖
请问指针怎么用?比如实现个哈希表。
139012
wrpwrp楼主2020/5/19 21:19

RT
自己试着搞了搞,然后就挂了。。。

#include <cstdio>

using namespace std;

namespace Data {
	const int P = 23456789;
	struct Node {
		Node *nxt;
		int val;
	};
	class Hash_Map {
		private:
			Node mp[P];
		public:
			inline void Insert(int val) {
				val %= P;
				Node *pos = &mp[val];
				while(pos != NULL) pos = pos-> nxt;
				pos = new Node; pos->val = val;
			}
			inline bool Find(int val) {
				val %= P;
				Node *pos = &mp[val];
				while(1) {
					if(pos == NULL) return 0;
					if(pos->val == val) return 1;
					pos = pos->nxt;
				}
			}
	};

}

using Data:: Hash_Map;
Hash_Map mp;
int main() {
	mp.Insert(1);
	printf("%d\n",mp.Find(1));
}
2020/5/19 21:19
加载中...