C語言哈希查找

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAXKEY 1000
typedef struct Info_s {int num;char name[30];int age;char addr[30];
}Info_t, *pInfo_t;
//哈希函數
int hash(char *key)
{int h = 0, g;while (*key){h = (h << 4) + *key++;g = h & 0xf0000000;if (g)h ^= g >> 24;h &= ~g;}return h % MAXKEY; //返回值范圍: 0~MAXKEY-1
}
int main() {//建立哈希表pInfo_t hashTable[MAXKEY] = { NULL };Info_t infoArr[] = {1001, "Wuyifan", 30, "Canada",1003, "Liuhuaqiang", 45, "Shijiazhuang",1005, "Zhengshuang", 30, "Shenyang",1007, "Mayun", 50, "Hangzhou"};//準備好的數據插入哈希表for (int i = 0; i < sizeof(infoArr) / sizeof(Info_t); ++i) {int hashValue = hash(infoArr[i].name);hashTable[hashValue] = &infoArr[i];}//查找char name[30];while (scanf("%s", name) != EOF) {if (hashTable[hash(name)] == NULL) {printf("%s is not in array!\n", name);}else {printf("%d %s %d %s\n", hashTable[hash(name)]->num,hashTable[hash(name)]->name,hashTable[hash(name)]->age,hashTable[hash(name)]->addr);}}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/163176.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/163176.shtml
英文地址,請注明出處:http://en.pswp.cn/news/163176.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

軟件測試之安全測試

軟件安全測試是指對軟件的安全性能和安全缺陷進行檢測和評估的過程&#xff0c;目的是保證軟件的安全性和穩定性&#xff0c;防止軟件受到惡意攻擊或者泄露敏感信息。 軟件安全測試要怎么測&#xff0c;主要取決于軟件的安全需求、風險和威脅。 在這我準備了一份軟件測試視頻…

C語言--給定一個數組,把第一項的值減去第二項的值,第二項的值減去第三項的值,第三項的值減去第四項的值,依次類推。放到一個新的數組中,并打印新的數組

一.題目描述&#xff1a; 給定一個數組&#xff0c;把第一項的值減去第二項的值&#xff0c;第二項的值減去第三項的值&#xff0c;第三項的值減去第四項的值&#xff0c;依次類推。放到一個新的數組中&#xff0c;并打印新的數組。 比如&#xff1a;輸入一個數組是5&#xff…

SA實戰 ·《SpringCloud Alibaba實戰》第14章-服務網關加餐:SpringCloud Gateway核心技術

大家好,我是冰河~~ 一不小心《SpringCloud Alibaba實戰》專欄都更新到第14章了,再不上車就跟不上了,小伙伴們快跟上啊! 在《SpringCloud Alibaba實戰》專欄前面的文章中,我們實現了用戶微服務、商品微服務和訂單微服務之間的遠程調用,并且實現了服務調用的負載均衡。也基…

Nginx結合cpolar實現內網穿透多個Windows Web站點端口

文章目錄 1. 下載windows版Nginx2. 配置Nginx3. 測試局域網訪問4. cpolar內網穿透5. 測試公網訪問6. 配置固定二級子域名7. 測試訪問公網固定二級子域名 1. 下載windows版Nginx 進入官方網站(http://nginx.org/en/download.html)下載windows版的nginx 下載好后解壓進入nginx目…

[autojs]利用console實現懸浮窗日志輸出

"ui"; ui.layout(<vertical><button id"autoFloatWindow" text"開啟懸浮窗" textSize"15sp" /><button id"autoService" text"開啟無障礙服務" textSize"15sp" /><button id"…

vue中怎么根據選擇的名稱 生成印章圖片

項目中需要根據選擇的印章名稱&#xff0c;動態生成印章 &#xff0c;印章下方顯示當前的日期 代碼如下 <template><div><label for"name">選擇名稱&#xff1a;</label><select id"name" v-model"selectedName">…

技術面時,一定要掌握這3個關鍵點

前言 現在有這么多優秀的測試工程師&#xff0c;大家都知道技術面試是不可避免的一個環節&#xff0c;一般技術面試官都會通過自己的方式去考察你的技術功底與基礎理論知識。 如果你參加過一些大廠面試&#xff0c;肯定會遇到一些這樣的問題&#xff1a; 1、看你項目都用到了…

機器學習/sklearn 筆記:K-means,kmeans++,MiniBatchKMeans

1 K-means介紹 1.0 方法介紹 KMeans算法通過嘗試將樣本分成n個方差相等的組來聚類&#xff0c;該算法要求指定群集的數量。它適用于大量樣本&#xff0c;并已在許多不同領域的廣泛應用領域中使用。KMeans算法將一組樣本分成不相交的簇&#xff0c;每個簇由簇中樣本的平均值描…

為什么要寫測試用例,測試用例寫給誰看?

&#x1f4e2;專注于分享軟件測試干貨內容&#xff0c;歡迎點贊 &#x1f44d; 收藏 ?留言 &#x1f4dd; 如有錯誤敬請指正&#xff01;&#x1f4e2;交流討論&#xff1a;歡迎加入我們一起學習&#xff01;&#x1f4e2;資源分享&#xff1a;耗時200小時精選的「軟件測試」資…

mysql查詢統計最近12個月的數據

項目場景&#xff1a; mysql查詢統計最近12個月的數據&#xff0c;按每個月縱向展示&#xff0c;效果圖 sql語句 注意&#xff1a;count( v.uuid ) 這里的是被統計那張表的id SELECT m.month,count( v.uuid ) AS total FROM (SELECT DATE_FORMAT(( CURDATE()), %Y-%m ) AS mon…

Leetcode—6.N字形變換【中等】

2023每日刷題&#xff08;三十七&#xff09; Leetcode—6.N字形變換 算法思想 參考k神的題解 實現代碼 class Solution { public:string convert(string s, int numRows) {if(numRows < 2) {return s;}vector<string> rows(numRows);int flag -1;int i 0;for(…

JMeter集結點的使用場景以及如何使用?

JMeter是一個開源的負載測試工具&#xff0c;它被廣泛用于測試應用程序、Web服務和網絡協議等的性能。在JMeter中&#xff0c;集結點&#xff08;JMeter Cluster&#xff09;是一種分布式測試環境&#xff0c;它允許多個JMeter實例同時工作來模擬高并發負載。 使用集結點的場景…

聚水潭連接API,集成無代碼開發,優化電商平臺運營

聚水潭連接API&#xff0c;實現電商平臺的高效運營 聚水潭作為一款SaaS ERP解決方案&#xff0c;通過其出色的產品和服務&#xff0c;迅速在市場上占據了一席之地。而其無代碼開發的特點&#xff0c;為電商系統和客服系統的連接與集成提供了便利。聚水潭開放平臺的優勢在于&am…

常見的電商模式

市面上5種常見的電商模式&#xff1a; B2B模式 B2B&#xff08;business to business&#xff09;,是指商家與商家建立的商業關系。如&#xff1a;阿里巴巴 B2C模式 B2C&#xff08;business to consumer&#xff09;,商對客模式&#xff0c;商業零售。直接面向消費者銷售產品…

2024年荊州中級工程師職稱申報時間是什么時候?

甘建二十年耕耘職稱。 2024年荊州中級工程師職稱開始準備了&#xff0c;關于荊門中級職稱具體申報時間&#xff0c;甘建二告訴你。 ?2024年荊州中級工程師職稱申報時間&#xff1a; 1.水平能力測試報名3月份 2.水平能力測試考試4月份3.職稱申報9月份&#xff0c;采取的是網上申…

ElementPlusError: [ElOnlyChild] no valid child node found

突然發現頁面報了一堆黃色的錯誤提示 查了下原來是這里導致的&#xff0c;只需要把v-if 挪到popover那層即可 解決

服務器安全防護導致使用多款行業頂尖軟件搭配使用,還是單獨一款解決呢?

如今&#xff0c;在全球各地&#xff0c;數以千計的公司、組織和個人都依賴于服務器來存儲和訪問重要數據&#xff0c;托管應用程序&#xff0c;以及提供服務。但是&#xff0c;這些服務器不斷面臨著來自網絡黑客的威脅&#xff0c;因此服務器的安全成為了當務之急。 在這種情…

win10底部任務欄無響應?試試這些方法!

win10的任務欄是一個關鍵的用戶界面元素&#xff0c;允許您輕松訪問應用程序和系統功能。然而&#xff0c;有時您可能會遇到win10底部任務欄無響應的問題&#xff0c;這會妨礙您的工作流程。本篇文章將介紹解決win 10底部任務欄無響應的問題的三種方法&#xff0c;每種方法都會…

git操作分支命令

# 列出所有本地分支 $ git branch# 列出所有遠程分支 $ git branch -r# 列出所有本地分支和遠程分支 $ git branch -a# 新建一個分支&#xff0c;但依然停留在當前分支 $ git branch [branch-name]# 新建一個分支&#xff0c;并切換到該分支 $ git checkout -b [branch]# 新建一…

RocketMQ保姆級教程

RocketMQ是阿里巴巴旗下一款開源的MQ框架&#xff0c;經歷過雙十一考驗、Java編程語言實現&#xff0c;有非常好完整生態系統。RocketMQ作為一款純java、分布式、隊列模型的開源消息中間件&#xff0c;支持事務消息、順序消息、批量消息、定時消息、消息回溯等&#xff0c;總之…