當前位置:首頁 » 操作系統 » 演算法實現過程

演算法實現過程

發布時間: 2025-01-11 04:43:45

『壹』 插入排序的演算法

排序演算法在編程領域中起著舉足輕重的作用,在目標檢索、機器學習、數值計算、圖像處理等領域有著廣泛地應用。為了追本溯源,公眾號特推出常用經典排序演算法系列推文,讓小夥伴們深入了解排序演算法的實現原理,同時也提升matlab編程能力。
插入排序演算法,它是將無序序列分成兩部分,一部分為假設已經排列完成的序列,另一部分為餘下序列,將餘下序列中的元素取出插入到已排列完成的序列中,依次比較確定插入位置,下面就一起來看看該算的實現原理吧。
插入排序演算法實現過程(以升序排列為例):
對於長度為N的無序數組A,假定序列A(1)為排列完成的序列K,將A(2)與A(1)作比較,如果A(2)<A(1),則兩者交換,否則保持不變,即完成序列K的元素添加;將A(3)與A(2)比較,如果A(2)<A(3),則保持不變,否則兩者交換,繼續將A(3)與A(1)比較,如果A(3)>A(1),則兩者交換,否則保持不變;以此類推,將餘下序列中的元素取出插入到序列K中,從序列K尾部往首部進行比較,直至完成所有元素的插入。

matlab代碼
主程序:main.m

format short;
clc;clear;
A = round(rand(1,8),2);
nA = InsertSort(A);
disp(['原始序列:',num2str(A)]);
disp(['插入排序:',num2str(nA)]);
插入排序函數:InsertSort.m

function A = InsertSort(A)
% 感謝關註:matlab愛好者
% 插入排序演算法源代碼
% 作者:matlab愛好者

len = length(A);
for w = 1:len-1
% 從餘下序列中取出一個元素插入到新序列中
for v = w+1:-1:2
if(A(v)<A(v-1))
% 如果新元素小於所插入位置的元素,則交換
tmp = A(v-1);
A(v-1) = A(v);
A(v) = tmp;
else
% 否則保持位置不變
break;
end
end
end

『貳』 如何利用RSA加密演算法編程實現對M=1234567的加密過程

基礎 RSA 演算法構建加密過程非常直接,具體步驟如下:

首先,選取兩個素數 p 和 q,隨後計算 n = p * q 以及 t = (p - 1) * (q - 1)。然後,選擇任意數 e,確保 e 與 t 的最大公約數為 1,即 e 可以與 t 互為逆數。至此,我們已經得到了三個關鍵數值:n、d 和 e。

假設消息 M = 1234567,我們將 M 作為原始信息,通過以下步驟進行加密:

計算加密後的信息 c = (M^d) % n,即使用私鑰 d 進行加 密。

接收方接收到加密信息 c 後,使用私鑰 e 進行解密,步驟為:m = (c^e) % n,最終得到原始信息 M。

在對稱加密應用中,公鑰由 n 和 d 組成,公鑰可以與他人共享;私鑰包含 n 和 e,其中 e 由發送方持有,並嚴格保密。他人使用發送方的公鑰對信息進行加密,僅發送方能通過私鑰解密,實現信息的簽名驗證功能。

RSA 演算法的安全性基於大數 n 的分解難題。在已知 n 和 d 的情況下,很難找到 e;同樣,當已知 n 和 e 時,也難以求得 d。這為 RSA 演算法提供了強大的安全保障,確保了消息在傳輸過程中的安全性和完整性。

『叄』 九宮圖演算法的實現步驟

第一步:菱形斜填寫
第二步:菱形四角的3和7,1和9交換,如下圖
第三步:9和1插隊進去,如圖

先將1—9九個數按如下圖排列
1
4 b 2
7 c 5 a 3
8 d 6
9
然後將a用7代替,同理1換d,3換c,9換昌咐弊b
便可得如下排列:
4 9 2
3 5 7
8 1 6
此方法也可推導至所有的基數的平方宮圖進行排列。
方法2:以中下格為起點,按右下為方向順序填寫(想像格子上下相連,左右相連),遇到右耐族下格已佔,填入正上方格內。
以25格為例: 11↘ 18↘ 25 2↘ 9↘
10填左方簡型 10↑
11填上方 12↘ 19↘ 21↘ 3↘
4填左方 4↘ 6↘ 13↘ 20↑ 11填上方 22↘
23填左方 23↘ 5↑
6填上方 7↘ 14↘ 16↘
17填左方 17↘
18填上方 24↘
25填上方 1↘
2填上方 8↘
9填上方 15↑ 16填上方

熱點內容
8歲講編程 發布:2025-01-11 08:02:41 瀏覽:129
迅雷的tracker伺服器地址 發布:2025-01-11 08:02:07 瀏覽:507
csgo天津伺服器ip 發布:2025-01-11 07:57:36 瀏覽:613
中國天氣android 發布:2025-01-11 07:56:53 瀏覽:464
伺服器負載均衡怎麼用 發布:2025-01-11 07:54:04 瀏覽:129
雲列印伺服器硬體 發布:2025-01-11 07:44:56 瀏覽:769
怎麼在手機上更改wifi密碼 發布:2025-01-11 07:37:26 瀏覽:337
開機啟動serviceandroid 發布:2025-01-11 07:35:24 瀏覽:524
天龍八部腳本設置自動喊話 發布:2025-01-11 07:31:37 瀏覽:310
硒標准溶液配置為什麼要加鹽酸 發布:2025-01-11 07:27:51 瀏覽:253