{"id":19984,"date":"2024-08-16T03:54:33","date_gmt":"2024-08-16T03:54:33","guid":{"rendered":"https:\/\/science-hub.click\/%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%BD%E3%83%BC%E3%83%88-%E5%AE%9A%E7%BE%A9\/"},"modified":"2024-08-16T03:54:33","modified_gmt":"2024-08-16T03:54:33","slug":"%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%BD%E3%83%BC%E3%83%88-%E5%AE%9A%E7%BE%A9","status":"publish","type":"post","link":"https:\/\/science-hub.click\/?p=19984","title":{"rendered":"\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 &#8211; \u5b9a\u7fa9"},"content":{"rendered":"<div><div><h2>\u5c0e\u5165<\/h2><p><b>\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/b>\u307e\u305f\u306f\u82f1\u8a9e\u3067<b>\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/b>\u306f\u3001\u30bd\u30fc\u30c8\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3067\u3059\u3002\u3053\u308c\u306f\u5b9f\u884c\u901f\u5ea6\u306e\u70b9\u3067\u633f\u5165\u30bd\u30fc\u30c8\u306b\u6bd4\u3079\u3066\u9855\u8457\u306a\u6539\u5584\u3067\u3059\u304c\u3001\u3053\u306e\u30bd\u30fc\u30c8\u306f\u5b89\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u3002\u3053\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u304c\u3069\u306e\u3088\u3046\u306b\u52d5\u4f5c\u3059\u308b\u304b\u3092\u76f4\u611f\u7684\u306b\u7406\u89e3\u3059\u308b\u306e\u306f\u7c21\u5358\u3067\u3059\u304c\u3001\u5b9f\u884c<span><a href=\"https:\/\/science-hub.click\/?p=82055\">\u6642\u9593<\/a><\/span>\u3092\u8a08\u7b97\u3059\u308b\u306e\u306f\u56f0\u96e3\u3067\u3059\u3002<\/p><p>\u3053\u306e\u540d\u524d\u306f\u3001 <i>Communications of the ACM<\/i>\u306e 1959 \u5e74 7 \u6708\u53f7\u306b\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u767a\u8868\u3057\u305f\u767a\u660e\u8005<span title=\"\u30c9\u30ca\u30eb\u30c9\u30fb\u30b7\u30a7\u30eb (\u30da\u30fc\u30b8\u306f\u5b58\u5728\u3057\u307e\u305b\u3093)\">Donald Shell<\/span> (1924 \u5e74<span title=\"\u5225\u306e\u8a00\u8a9e\u306e\u8a18\u4e8b\u300c\u30c9\u30ca\u30eb\u30c9\u30fb\u30b7\u30a7\u30eb\u300d\u306b\u76f8\u5f53\">\u751f\u307e\u308c<\/span>) \u306b\u7531\u6765\u3057\u3066\u3044\u307e\u3059\u3002<\/p><figure class=\"wp-block-image size-large is-style-default\">\n<img decoding=\"async\" alt=\"\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 - \u5b9a\u7fa9\" class=\"aligncenter\" onerror=\"this.style.display=none;\" src=\"https:\/\/img.youtube.com\/vi\/R9LkFlZz4Bc\/0.jpg\" style=\"width:100%;\"\/><\/figure><h2>\u6a5f\u80fd\u3057\u3066\u3044\u308b<\/h2><p><span><a href=\"https:\/\/science-hub.click\/?p=19984\">\u30b7\u30a7\u30eb \u30bd\u30fc\u30c8\u306f<\/a><\/span>\u3001\u6b21\u306e 2 \u3064\u306e\u70b9\u306b\u6ce8\u610f\u3057\u3066\u633f\u5165\u30bd\u30fc\u30c8\u3092\u6539\u826f\u3057\u305f\u3082\u306e\u3067\u3059\u3002<\/p><ul><li>\u633f\u5165\u30bd\u30fc\u30c8\u306f\u30ea\u30b9\u30c8\u304c\u5927\u307e\u304b\u306b\u30bd\u30fc\u30c8\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306b\u6709\u52b9\u3067\u3059\u3002 (1)<\/li><li>\u633f\u5165\u30bd\u30fc\u30c8\u306f<span><a href=\"https:\/\/science-hub.click\/?p=80883\">\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8<\/a><\/span>\u3054\u3068\u306b\u5024\u3092 1 \u3064\u306e\u4f4d\u7f6e\u306b\u79fb\u52d5\u3059\u308b\u3060\u3051\u306a\u306e\u3067\u3001<span><a href=\"https:\/\/science-hub.click\/?p=87799\">\u5e73\u5747\u3059\u308b<\/a><\/span>\u3068\u975e\u52b9\u7387\u7684\u3067\u3059\u3002 (2)<\/li><\/ul><p>\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8\u306f\u3001\u633f\u5165\u30bd\u30fc\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001 <i>n \u500b<\/i>\u306e\u4f4d\u7f6e\u3067\u533a\u5207\u3089\u308c\u305f\u8981\u7d20\u306e\u5404\u30ea\u30b9\u30c8\u3092\u30bd\u30fc\u30c8\u3057\u307e\u3059\u3002\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u3053\u306e\u64cd\u4f5c\u3092\u6570\u56de\u5b9f\u884c\u3057\u3001 <i>n=1<\/i>\u306b\u306a\u308b\u307e\u3067<i>n \u3092<\/i>\u6e1b\u3089\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u3059\u3079\u3066\u306e\u8981\u7d20\u3092<span><a href=\"https:\/\/science-hub.click\/?p=57227\">\u307e\u3068\u3081\u3066<\/a><\/span>\u4e26\u3079\u66ff\u3048\u308b\u3053\u3068\u3068\u540c\u3058\u3067\u3059\u3002<\/p><p>\u9593\u9694\u3092\u3042\u3051\u305f\u8981\u7d20\u304b\u3089\u958b\u59cb\u3059\u308b\u3068\u6b20\u70b9 (2) \u304c\u514b\u670d\u3055\u308c\u3001\u6700\u5f8c\u306b\u9593\u9694 1 \u3067\u5b9f\u884c\u3059\u308b\u3068 (\u5b9f\u969b\u306b\u306f\u901a\u5e38\u306e\u633f\u5165\u30bd\u30fc\u30c8\u306b\u306a\u308a\u307e\u3059)\u3001\u5229\u70b9 (1) \u3092\u5229\u7528\u3067\u304d\u307e\u3059\u3002<\/p><h2>\u8981\u7d20\u9593\u306e\u30ae\u30e3\u30c3\u30d7\u307e\u305f\u306f\u9593\u9694<\/h2><p>\u6700\u521d\u306e\u6700\u9069\u306a\u9593\u9694 (\u7d4c\u9a13\u7684\u306b\u898b\u3064\u304b\u3063\u305f) \u306f\u30011\u30014\u300110\u300123\u300157\u3001132\u3001301\u3001701 \u3067\u3059\u3002<\/p><p>\u6700\u521d\u306e 2 \u3064\u3092\u9664\u3044\u3066\u3001\u3053\u308c\u3089\u306e\u5024\u306e\u9593\u306e\u4fc2\u6570\u306f\u7d04 2.3 \u3067\u3042\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<span><a href=\"https:\/\/science-hub.click\/?p=26304\">\u914d\u5217<\/a><\/span>\u306e<span><a href=\"https:\/\/science-hub.click\/?p=84871\">\u6b21\u5143\u304c<\/a><\/span>\u7d04 1600 \u8981\u7d20\u3092\u8d85\u3048\u308b\u5834\u5408\u3001\u3053\u306e\u4fc2\u6570\u3092\u4f7f\u7528\u3057\u3066\u3053\u306e\u30ea\u30b9\u30c8\u3092\u5b9f\u969b\u306b\u62e1\u5f35\u3067\u304d\u307e\u3059\u3002\u305f\u3068\u3048\u3070\u3001Pascal \u306e\u6700\u521d\u306e<i>\u30ae\u30e3\u30c3\u30d7<\/i>\u3092\u898b\u3064\u3051\u308b\u306b\u306f\u3001\u6b21\u306e\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p><div dir=\"ltr\"><div><pre class=\"de1\"> \u30ae\u30e3\u30c3\u30d7<span>:=<\/span> <span>701<\/span> ;\u9699\u9593<span>\u306e\u9593<\/span><length<span class=\"br0\"> (\u30ea\u30b9\u30c8<span>)<\/span> <span>do<\/span>\u30ae\u30e3\u30c3\u30d7<span>:=<\/span>\u30e9\u30a6\u30f3\u30c9<span>(<\/span>\u30ae\u30e3\u30c3\u30d7<span>*<\/span> 2.3 <span>)<\/span> ; <\/length<span><\/pre><\/div><\/div><p>\u6b21\u306b\u3001\u5404\u53cd\u5fa9\u3067\u3001\u8a08\u7b97\u3055\u308c\u305f<i>\u30ae\u30e3\u30c3\u30d7<\/i>\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p><div dir=\"ltr\"><div><pre class=\"de1\"> \u30ae\u30e3\u30c3\u30d7<span>:=<\/span>\u30e9\u30a6\u30f3\u30c9<span>(<\/span>\u30ae\u30e3\u30c3\u30d7<span>\/<\/span> 2.3 <span>)<\/span> ;<\/pre><\/div><\/div><h2>\u30b9\u30d4\u30fc\u30c9<\/h2><p>\u8981\u7d20\u304c 100 \u500b\u672a\u6e80\u306e\u914d\u5217\u3067\u306f\u3001\u3053\u306e\u30bd\u30fc\u30c8\u306f\u5358\u7d14\u306a<span><a href=\"https:\/\/science-hub.click\/?p=21748\">\u30af\u30a4\u30c3\u30af \u30bd\u30fc\u30c8<\/a><\/span>\u3068\u540c\u3058\u304f\u3089\u3044\u9ad8\u901f\u3067\u3059\u3002\u305f\u3060\u3057\u3001<i>\u30af\u30a4\u30c3\u30af\u30bd\u30fc\u30c8<\/i>\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3068\u7af6\u5408\u3059\u308b\u306e\u3067\u306f\u306a\u304f\u3001\u51e6\u7406\u3055\u308c\u308b\u30b5\u30d6\u30ea\u30b9\u30c8\u304c\u5c0f\u3055\u304f\u306a\u3063\u305f\u5834\u5408\u306e\u6700\u9069\u5316\u306b\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002<\/p><p>\u5404\u30b9\u30c6\u30c3\u30d7\u3067\u4e26\u3079\u66ff\u3048\u308b\u8981\u7d20\u9593\u306e\u9593\u9694 (\u30ae\u30e3\u30c3\u30d7) \u306e\u9078\u629e\u306f\u975e\u5e38\u306b\u91cd\u8981\u3067\u3059\u3002\u5b9f\u884c\u6642\u9593\u306f<span><i>O<\/i> ( <i>n2<\/i> <sup>)<\/sup><\/span>\u304b\u3089<span><i>O<\/i> ( <i>n<\/i> <sup>log2n<\/sup> <i>)<\/i><\/span>\u307e\u3067\u3001\u304a\u305d\u3089\u304f<span><i>O<\/i> ( <i>n<\/i> log <i>n<\/i> )<\/span>\u307e\u3067\u5909\u5316\u3057\u307e\u3059\u3002<span>\u3053\u308c\u306f<\/span><span>\u7814\u7a76<\/span>\u5bfe\u8c61\u3067\u3059\u3002<\/p><h2>\u5b9f\u88c5\u4f8b<\/h2><h3><span>GFA <span><a href=\"https:\/\/science-hub.click\/?p=66309\">BASIC<\/a><\/span>\u306e\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/span><\/h3><div dir=\"ltr\"><div><pre class=\"de1\"> PROCEDURE Tri_Shell(N <span>As<\/span> Int, <span>ByRef<\/span> E() <span>As<\/span> Int) Local Int D, LIMIT, INTERVERSION, J, ID = Div(N, 2) <span>' D = \u6bd4\u8f03\u8ddd\u96e2<\/span><span>Do<\/span> <span>' \u8ddd\u96e2\u306e\u7d30\u5206\u5316\u306e\u30e1\u30a4\u30f3\u30eb\u30fc\u30d7<\/span>LIMIT = <span>Sub<\/span> ( N , D) <span>' \u6bd4\u8f03\u3092\u5236\u9650\u307e\u305f\u306f\u505c\u6b62\u3057\u307e\u3059<\/span><span>Do<\/span> <span>' \u4ecb\u5165\u306e\u5834\u5408\u306e\u4e8c\u6b21\u518d\u6bd4\u8f03\u30eb\u30fc\u30d7<\/span>INTERVERSION = 0 <span>' \u4e8b\u524d\u306b\u53cd\u8ee2\u306a\u3057 (=0)<\/span> J = D <span>' J%= \u6bd4\u8f03\u306e 2 \u756a\u76ee\u306e\u8981\u7d20\u306e\u756a\u53f7<\/span><span>For<\/span> I = 1 <span>To<\/span> LIMIT% <span>' I%=1\u756a\u76ee\u306e\u6bd4\u8f03\u8981\u7d20\u3067LOOP\u3092\u30bd\u30fc\u30c8<\/span>Inc J <span>' J%\u306f\u8ddd\u96e2\u3092\u4fdd\u3061\u306a\u304c\u3089I%\u3092\u305f\u3069\u308b D%<\/span> <span>If<\/span> E(I) &gt; E(J) <span>' \u53cd\u8ee2\u306b\u8a72\u5f53\u3059\u308b\u5834\u5408<\/span>INTERVERSION = I <span>' \u306e\u4f4d\u7f6e\u3092\u8a18\u61b6\u3057\u307e\u3059\u76f8\u4e92\u5909\u63db<\/span>Swap E(I), E(J) <span>' 2 \u3064\u306e\u8981\u7d20\u3092\u53cd\u8ee2\u3057\u307e\u3059<\/span>EndIf <span><span><a href=\"https:\/\/science-hub.click\/?p=78803\">Next<\/a><\/span><\/span> I% LIMIT = INTERVERSION <span>' \u6b21\u306e\u30bd\u30fc\u30c8 \u30eb\u30fc\u30d7\u306f\u6700\u5f8c\u306e 1 \u3064\u306e\u76f8\u4e92\u5909\u63db\u3067\u505c\u6b62\u3057\u307e\u3059<\/span><span>Loop<\/span> <span>While<\/span> INTERVERSION &gt; 0 <span>' \u8981\u7d20\u306e\u9806\u5e8f\u304c\u540c\u3058\u3067\u3042\u308c\u3070\u6bd4\u8f03\u3092\u7e70\u308a\u8fd4\u3057\u307e\u3059\u8981\u7d20\u304c\u5909\u66f4\u3055\u308c\u307e\u3057\u305f<\/span>Div D, 2 <span>' \u305d\u308c\u4ee5\u5916\u306e\u5834\u5408\u306f\u3001\u8ddd\u96e2\u3092 2 \u3067\u5272\u3063\u3066\u518d\u5ea6<\/span><span>\u30eb\u30fc\u30d7<\/span>\u3092\u958b\u59cb\u3057\u307e\u3059\u3002<span>\u8ddd\u96e2\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u306a\u304f\u306a\u3063\u305f<\/span><span>\u5834\u5408\u3092<\/span>\u9664\u304d\u3001D &gt; 0 \u3092\u30eb\u30fc\u30d7\u3057\u307e\u3059\u3002 Return<\/pre><\/div><\/div><h3> <span>C \u3067\u306e\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/span><\/h3><div dir=\"ltr\"><div><pre class=\"de1\"><span>\/* *<span>\u6307\u5b9a\u3055\u308c\u305f<\/span><span><a href=\"https:\/\/science-hub.click\/?p=90407\">\u533a\u5207\u308a<\/a><\/span>\u3067\u633f\u5165\u30bd\u30fc\u30c8\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002 * \u30ae\u30e3\u30c3\u30d7 == 1 \u306e\u5834\u5408\u3001\u901a\u5e38\u306e\u30bd\u30fc\u30c8\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002 * \u30ae\u30e3\u30c3\u30d7 &gt;= \u9577\u3055\u306e\u5834\u5408\u306f\u4f55\u3082\u3057\u307e\u305b\u3093\u3002 *\/<\/span> <span>void<\/span> shellSortPhase <span>(<\/span> <span>int<\/span> a <span>[<\/span> <span>]<\/span> <span>,<\/span> <span>int<\/span> length <span>,<\/span> <span>int<\/span> gap <span>)<\/span> <span>{<\/span> <span>int<\/span> i <span>;<\/span> <span>for<\/span> <span>(<\/span> i <span>=<\/span>\u30ae\u30e3\u30c3\u30d7<span>;<\/span> i <span>&lt;<\/span>\u9577\u3055<span>;<\/span> <span>++<\/span> i <span>)<\/span> <span>{<\/span> <span>int<\/span>\u5024<span>=<\/span> a <span>[<\/span> i <span>]<\/span> <span>;<\/span> <span>int<\/span> j <span>;<\/span> <span>for<\/span> <span>(<\/span> j <span>=<\/span> i <span>-<\/span>\u30ae\u30e3\u30c3\u30d7<span>;<\/span> j <span>&gt;=<\/span> 0 <span>&amp;&amp;<\/span> a <span>[<\/span> j <span>]<\/span> <span>&gt;<\/span>\u5024<span>;<\/span> j <span>-=<\/span>\u30ae\u30e3\u30c3\u30d7<span>)<\/span> <span>{<\/span> a <span>[<\/span> j <span>+<\/span>\u30ae\u30e3\u30c3\u30d7<span>]<\/span> <span>=<\/span> a <span>[<\/span> j <span>]<\/span> <span>;<\/span> <span>a<\/span> <span>[<\/span> j <span>+<\/span>\u30ae\u30e3\u30c3\u30d7<span>]<\/span> <span>=<\/span>\u5024<span>;<\/span> <span>}<\/span> <span>}<\/span> <span>voidshellSort<\/span> <span>(<\/span> <span>int<\/span> a <span>[<\/span> <span>]<\/span> <span>,<\/span> size_t length <span>)<\/span> <span>{<\/span> <span>\/* * \u30ae\u30e3\u30c3\u30d7[] \u306f\u5e7e\u4f55\u7d1a\u6570\u306b\u8fd1\u4f3c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 * \u6b21\u306e\u30b7\u30fc\u30b1\u30f3\u30b9\u306f\u3001 * \u5e73\u5747\u6bd4\u8f03<span><a href=\"https:\/\/science-hub.click\/?p=71097\">\u6570<\/a><\/span>\u306e\u89b3\u70b9\u304b\u3089\u6700\u3082\u3088\u304f\u77e5\u3089\u308c\u3066\u3044\u307e\u3059\u3002\u53c2\u7167: * http:\/\/www.research.att.com\/~njas\/sequences\/A102549 *\/<\/span> <span>static<\/span> <span>const<\/span> <span>int<\/span> sinners <span>[<\/span> <span>]<\/span> <span>=<\/span> <span>{<\/span> 1 <span>,<\/span> 4 <span>,<\/span> 10 <span>,<\/span> 23 <span>,<\/span> 57 <span>,<\/span> 132 <span>,<\/span> 301 <span>,<\/span> 701 <span>}<\/span> <span>;<\/span> <span>int<\/span>\u30b5\u30a4\u30ba\u30a4\u30f3\u30c7\u30c3\u30af\u30b9<span>;<\/span> <span>for<\/span> <span>(<\/span> sizeIndex <span>=<\/span> <span>sizeof<\/span> <span>(<\/span> gaps <span>)<\/span> <span>\/<\/span> <span>sizeof<\/span> <span>(<\/span> gaps <span>[<\/span> 0 <span>]<\/span> <span>)<\/span> <span>-<\/span> <span>1<\/span> <span>;<\/span> sizeIndex <span>&gt;=<\/span> <span>0<\/span> <span>;<\/span> <span>--sizeIndex<\/span> <span>)<\/span> shellSortPhase <span>(<\/span> a <span>,<\/span> length <span>,<\/span> Gaps <span>[<\/span> sizeIndex <span>]<\/span> <span>)<\/span> <span>;<\/span> <span>}<\/span><\/pre><\/div><\/div><h3> <span>C++ \u3067\u306e\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/span><\/h3><div dir=\"ltr\"><div><pre class=\"de1\"><span>\/*<span><a href=\"https:\/\/science-hub.click\/?p=21882\">\u6f14\u7b97\u5b50<\/a><\/span>'=='\u3001'&lt;'\u3001\u304a\u3088\u3073 '&gt;' \u304c\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u308b<span><a href=\"https:\/\/science-hub.click\/?p=95765\">\u3042\u3089\u3086\u308b<\/a><\/span>\u7a2e\u985e\u306e\u30c7\u30fc\u30bf\u306b\u9069\u5fdc\u3067\u304d\u308b\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u524d\u306e\u30b3\u30fc\u30c9\u3092 C++ \u3067<span><a href=\"https:\/\/science-hub.click\/?p=564\">\u518d\u9069\u5fdc\u3057\u307e\u3059<\/a><\/span>\u3002 *\/<\/span> <span>template<\/span> <span>&lt;<\/span> <span>typename<\/span> T <span>&gt;<\/span> <span>void<\/span> SHELLSRT_phase <span>(<\/span> T <span>*<\/span> a, <span>unsigned<\/span> <span>int<\/span> size, <span>unsigned<\/span> <span>int<\/span> gap <span>)<\/span> <span>{<\/span> <span>for<\/span> <span>(<\/span> <span>int<\/span> i <span>=<\/span> gap <span>;<\/span> i <span>&lt;<\/span> <span>(<\/span> <span>int<\/span> <span>)<\/span> size <span>;<\/span> <span>++<\/span> i <span>)<\/span> <span>{<\/span> T value <span>=<\/span> a <span>[<\/span> i <span>]<\/span> <span>;<\/span> <span>int<\/span> tmp <span>=<\/span> <span>i-<\/span>\u30ae\u30e3\u30c3\u30d7<span>;<\/span> <span>int<\/span> j <span>=<\/span> <span>0<\/span> <span>;<\/span> <span>for<\/span> <span>(<\/span> j <span>=<\/span> tmp <span>;<\/span> <span>(<\/span> <span>(<\/span> j <span>&gt;=<\/span> 0 <span>)<\/span> <span>&amp;&amp;<\/span> <span>(<\/span> a <span>[<\/span> j <span>]<\/span> <span>&gt;<\/span> value <span>)<\/span> <span>)<\/span> <span>;<\/span> j <span>-<\/span> <span>=<\/span>\u30ae\u30e3\u30c3\u30d7<span>)<\/span> a <span>[<\/span> j <span>+<\/span>\u30ae\u30e3\u30c3\u30d7<span>]<\/span> <span>=<\/span> a <span>[<\/span> j <span>]<\/span> <span>;<\/span> a <span>[<\/span> j <span>+<\/span>\u30ae\u30e3\u30c3\u30d7<span>]<\/span> <span>=<\/span>\u5024<span>;<\/span> <span>}<\/span> <span>}<\/span> <span>template<\/span> <span>&lt;<\/span> <span>typename<\/span> T <span>&gt;<\/span> <span>void<\/span> SHELLSRT_make <span>(<\/span> T <span>*<\/span> a, <span>unsigned<\/span> <span>int<\/span> size <span>)<\/span> <span>{<\/span> <span>static<\/span> <span>const<\/span> <span>unsigned<\/span> <span>int<\/span> Cabinet <span>[<\/span> 9 <span>]<\/span> <span>=<\/span> <span>{<\/span> 1, 4, 10, 23, 57, 132, 301, 701, 1750 <span>}<\/span> <span>;<\/span> <span>unsigned<\/span> <span>int<\/span> tmp <span>=<\/span> 9 <span>-<\/span> <span>1<\/span> <span>;<\/span> <span>for<\/span> <span>(<\/span> <span>unsigned<\/span> <span>int<\/span> i <span>=<\/span> tmp <span>;<\/span> i <span>!<\/span> <span>=<\/span> <span>-<\/span> <span>1<\/span> <span>;<\/span> <span>--<\/span> i <span>)<\/span> SHELLSRT_phase <span>(<\/span> a, \u30b5\u30a4\u30ba, \u30ae\u30e3\u30c3\u30d7<span>[<\/span> i <span>]<\/span> <span>)<\/span> <span>;<\/span> <span>}<\/span><\/pre><\/div><\/div><figure class=\"wp-block-image size-large is-style-default\">\n<img decoding=\"async\" alt=\"\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 - \u5b9a\u7fa9\" class=\"aligncenter\" onerror=\"this.style.display=none;\" src=\"https:\/\/img.youtube.com\/vi\/3Kg351U5dls\/0.jpg\" style=\"width:100%;\"\/><\/figure><h3><span>\u30d1\u30b9\u30ab\u30eb\u3067\u30b7\u30a7\u30eb\u304c\u51fa\u3066\u304f\u308b<\/span><\/h3><p>Pascal \u3067\u306e Shell \u30bd\u30fc\u30c8 (\u6607\u9806) \u306e\u5b9f\u88c5\u3002<\/p><div dir=\"ltr\"><div><pre class=\"de1\"><span>\u30d7\u30ed\u30b7\u30fc\u30b8\u30e3<\/span>TriShell <span>(<\/span> n <span>:<\/span><span>\u6574\u6570<\/span>;<span>\u5909\u6570<\/span><span>:<\/span>\u30bf\u30d6<span>)<\/span> ; <span>var<\/span> p <span>\u3001<\/span> k <span>\u3001<\/span> i <span>\u3001<\/span> j <span>\u3001<\/span> x <span>:<\/span><span>\u6574\u6570<\/span>; <span>begin<\/span> <span>(* * \u306e\u7d50\u679c\u3067\u3042\u308b\u6700\u9069\u306a\u30ae\u30e3\u30c3\u30d7\u3092\u691c\u7d22\u3057\u307e\u3059)<\/span> <span>(* \u7e70\u308a\u8fd4\u3057\u30b7\u30fc\u30b1\u30f3\u30b9: Un = 3.Un-1 + 1 *)<\/span> <span>(* Un &lt; n (\u914d\u5217\u8981\u7d20\u6570) \u3067\u3042\u308b\u3088\u3046\u306b *)<\/span> p <span>: =<\/span> <span>0<\/span> ; <span>while<\/span> <span>(<\/span> p &lt; n <span>)<\/span> <span>do<\/span> p <span>:=<\/span> 3 <span>*<\/span> p <span>+<\/span> <span>1<\/span> ; <span>while<\/span> <span>(<\/span> p &lt;&gt; 1 <span>)<\/span> <span>do<\/span> <span>begin<\/span> <span>(* \u30ae\u30e3\u30c3\u30d7\u3092\u5f90\u3005\u306b<span><a href=\"https:\/\/science-hub.click\/?p=7150\">\u8abf\u6574\u3057\u307e\u3059<\/a><\/span>*)<\/span> <span>(* \u30ae\u30e3\u30c3\u30d7 = 1 ==&gt; \u901a\u5e38\u306e\u633f\u5165\u30bd\u30fc\u30c8 *)<\/span> p <span>:=<\/span> p <span>div<\/span> <span>3<\/span> ; <span>if<\/span> <span>(<\/span> p <span>=<\/span> 1 <span>)<\/span> <span>then<\/span> x <span>:=<\/span> 1 <span>else<\/span> x <span>:=<\/span> n <span>-<\/span> <span>(<\/span> n <span>mod<\/span> p <span>)<\/span> <span>+<\/span> <span>1<\/span> ; <span>for<\/span> i <span>:=<\/span> x <span>to<\/span> n <span>do<\/span> <span>begin<\/span> k <span>:=<\/span> t <span>[<\/span> i <span>]<\/span> ; <span>(* \u633f\u5165\u3059\u308b\u5024 *)<\/span> <span>(* \u633f\u5165\u4f4d\u7f6e\u306e\u691c\u7d22 *)<\/span> j <span>:=<\/span> i; <span>while<\/span> <span>(<\/span> j &gt; <span>=<\/span> p <span>)<\/span><span>\u3068<\/span><span>(<\/span> t <span>[<\/span> j <span>-<\/span> p <span>]<\/span> &gt; k <span>)<\/span><span>\u306f<\/span>t <span>[<\/span> j <span>]<\/span> <span>:=<\/span> t <span>[<\/span> j <span>-<\/span> p <span>]<\/span> ;<span>\u304b\u3089\u59cb\u307e\u308a\u307e\u3059<\/span>\u3002 j <span>:=<\/span> j <span>-<\/span> p;<span>\u7d42\u308f\u308a<\/span>; <span>(* \u5024\u3092\u305d\u306e\u4f4d\u7f6e\u306b\u633f\u5165 *)<\/span> t <span>[<\/span> j <span>]<\/span> <span>:=<\/span> k;<span>\u7d42\u308f\u308a<\/span>;<span>\u7d42\u308f\u308a<\/span>;<span>\u7d42\u308f\u308a<\/span>;<\/pre><\/div><\/div><h3> <span>Java\u306e\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/span><\/h3><div dir=\"ltr\"><div><pre class=\"de1\"><span>public<\/span> <span>static<\/span> <span>void<\/span> sortOfShell <span>(<\/span> <span>int<\/span> <span>[<\/span> <span>]<\/span> tab, <span>intlogicalsize<\/span> <span>)<\/span> <span>{<\/span> <span>int<\/span> step <span>=<\/span> <span>1<\/span> <span>;<\/span> <span>while<\/span> <span>(<\/span>\u30b9\u30c6\u30c3\u30d7<span>&lt;<\/span> LogicalSize <span>\/<\/span> 9 <span>)<\/span> <span>{<\/span>\u30b9\u30c6\u30c3\u30d7<span>=<\/span>\u30b9\u30c6\u30c3\u30d7<span>*<\/span> 3 <span>+<\/span> <span>1<\/span> <span>;<\/span> <span>\/\/ \u6700\u521d\u306e\u30b9\u30c6\u30c3\u30d7\u3092\u4fee\u6b63\u3057\u307e\u3059<\/span><span>}<\/span> <span>while<\/span> <span>(<\/span> step <span>&gt;<\/span> <span>0<\/span> <span>)<\/span> <span>{<\/span> <span>\/\/ \u3055\u307e\u3056\u307e\u306a\u30b9\u30c6\u30c3\u30d7\u3067\u30eb\u30fc\u30d7\u3057\u307e\u3059<\/span><span>for<\/span> <span>(<\/span> <span>int<\/span> series <span>=<\/span> <span>0<\/span> <span>;<\/span> series <span>&lt;=<\/span> step <span>-<\/span> <span>1<\/span> <span>;<\/span> series <span>++<\/span> <span>)<\/span> <span>{<\/span> <span>\/\/ \u30b7\u30ea\u30fc\u30ba\u3067\u30eb\u30fc\u30d7\u3057\u307e\u3059<\/span><span>int<\/span> PositionEltAInsert <span>=<\/span>\u30b7\u30ea\u30fc\u30ba<span>+<\/span>\u30b9\u30c6\u30c3\u30d7<span>;<\/span> <span>\/\/ \u633f\u5165\u9806\u306b\u4e26\u3079\u66ff\u3048<\/span><span>while<\/span> <span>(<\/span> eltAInsertposition <span>&lt;<\/span> logicalsize <span>)<\/span> <span>{<\/span> <span>int<\/span> elementAInsert <span>=<\/span> tab <span>[<\/span> eltAInsertposition <span>]<\/span> <span>;<\/span> <span>int<\/span> posElem Compare <span>=<\/span> PositionEltAInsert <span>-<\/span>\u30b9\u30c6\u30c3\u30d7<span>;<\/span> <span>while<\/span> <span>(<\/span> <span>(<\/span> posElem Compare <span>&gt;=<\/span> 0 <span>)<\/span> <span>&amp;&amp;<\/span> <span>(<\/span> elementAInsert <span>&lt;<\/span> tab <span>[<\/span> posElem Compare <span>]<\/span> <span>)<\/span> <span>)<\/span> <span>{<\/span> tab <span>[<\/span> posElem Compare <span>+<\/span> steps <span>]<\/span> <span>=<\/span> tab <span>[<\/span> posElem Compare <span>]<\/span> <span>;<\/span> posElem Compare <span>-= \u3067<\/span>\u306f\u3042\u308a\u307e\u305b\u3093<span>\u3002<\/span><span>\u30bf\u30d6<\/span><span>[<\/span> posElem Compare <span>+<\/span>\u30b9\u30c6\u30c3\u30d7<span>]<\/span> <span>=<\/span> elementAInsert <span>;<\/span>\u4f4d\u7f6eEltA\u633f\u5165<span>+=<\/span>\u30b9\u30c6\u30c3\u30d7<span>;<\/span><span>\u30b9\u30c6\u30c3\u30d7<\/span><span>=<\/span><span>\u30b9\u30c6\u30c3\u30d7<\/span><span>\/<\/span> <span>3<\/span> <span>;<\/span> <span>}<\/span> <span>}<\/span><\/pre><\/div><\/div><h3> <span>C# \u3067\u306e\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8<\/span><\/h3><div dir=\"ltr\"><div><pre class=\"de1\"><span>usingSystem<\/span> <span><span>;<\/span><\/span> <span>public<\/span> <span><span><a href=\"https:\/\/science-hub.click\/?p=61666\">class<\/a><\/span><\/span> ShellSorter <span>{<\/span> <span>public<\/span> <span>void<\/span> Sort <span>(<\/span> <span>int<\/span> <span>[<\/span> <span>]<\/span> list <span>)<\/span> <span>{<\/span> <span>int<\/span> inc <span>;<\/span> <span>for<\/span> <span>(<\/span> inc <span>=<\/span> <span>1<\/span> <span>;<\/span> inc <span>&lt;=<\/span> <span>list.Length<\/span> <span>\/<\/span> <span>9<\/span> <span>;<\/span> inc <span>=<\/span> 3 <span>*<\/span> inc <span>+<\/span> 1 <span>)<\/span> <span>;<\/span> <span>for<\/span> <span>(<\/span> <span>;<\/span> inc <span>&gt;<\/span> <span>0<\/span> <span>;<\/span> inc <span>\/=<\/span> 3 <span>)<\/span> <span>{<\/span> <span>for<\/span> <span>(<\/span> <span>int<\/span> i <span>=<\/span> inc <span>+<\/span> <span>1<\/span> <span>;<\/span> i <span>&lt;=<\/span> <span>list.Length<\/span> <span>;<\/span> i <span>+=<\/span> inc <span>)<\/span> <span>{<\/span> <span>int<\/span> t <span>=<\/span> list <span>[<\/span> i <span>-<\/span> 1 <span>]<\/span> <span>;<\/span> <span>int<\/span> j <span>=<\/span> i <span>;<\/span> <span>while<\/span> <span>(<\/span> <span>(<\/span> j <span>&gt;<\/span> inc <span>)<\/span> <span>&amp;&amp;<\/span> <span>(<\/span> list <span>[<\/span> j <span>-<\/span> inc <span>-<\/span> 1 <span>]<\/span> <span>&gt;<\/span> t <span>)<\/span> <span>)<\/span> <span>{<\/span> list <span>[<\/span> j <span>-<\/span> 1 <span>]<\/span> <span>=<\/span> list <span>[<\/span> j <span>-<\/span> inc <span>-<\/span> 1 <span>]<\/span> <span>;<\/span> j <span>-=<\/span>\u682a\u5f0f\u4f1a\u793e<span>;<\/span><span>\u30ea\u30b9\u30c8<\/span><span>[<\/span> j <span>-<\/span> 1 <span>]<\/span> <span>=<\/span> t <span>;<\/span> <span>}<\/span> <span>}<\/span> <span>}<\/span> <span>}<\/span> <span>public<\/span> <span>class<\/span> MainClass <span>{<\/span> <span>public<\/span> <span>static<\/span> <span>void<\/span> <span><a href=\"https:\/\/science-hub.click\/?p=64953\">Main<\/a><\/span> <span>(<\/span> <span>)<\/span> <span>{<\/span> <span>int<\/span> <span>[<\/span> <span>]<\/span> iArrary <span>=<\/span> <span>new<\/span> <span>int<\/span> <span>[<\/span> <span>]<\/span> <span>{<\/span> 1,5,3,6,10,55,9,2,87,12,34,75,33 ,47 <span>}<\/span> <span>;<\/span>\u30b7\u30a7\u30eb\u30bd\u30fc\u30bf\u30fc sh <span>=<\/span><span>\u65b0\u3057\u3044<\/span>\u30b7\u30a7\u30eb\u30bd\u30fc\u30bf\u30fc<span>(<\/span> <span>)<\/span> <span>;<\/span>\u3057\u30fc\u3002<span>\u30bd\u30fc\u30c8<\/span><span>(<\/span> iArrary <span>)<\/span> <span>;<\/span> <span>(<\/span> <span>int<\/span> m <span>=<\/span> <span>0<\/span> <span>;<\/span> m <span>&lt;=<\/span> <span>13<\/span> <span>;<\/span> m <span>++<\/span> <span>)<\/span>\u30b3\u30f3\u30bd\u30fc\u30eb<span>\u306e\u5834\u5408<\/span>\u3002 <span>WriteLine<\/span> <span>(<\/span> <span>\"{0}\"<\/span> ,iArrary <span>[<\/span> m <span>]<\/span> <span>)<\/span> <span>;<\/span> <span>}<\/span> <span>}<\/span><\/pre><\/div><\/div><\/div><figure class=\"wp-block-image size-large is-style-default\">\n<img decoding=\"async\" alt=\"\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 - \u5b9a\u7fa9\" class=\"aligncenter\" onerror=\"this.style.display=none;\" src=\"https:\/\/img.youtube.com\/vi\/9WzUjY2jyLc\/0.jpg\" style=\"width:100%;\"\/><\/figure><h2 class=\"ref_link\">\u53c2\u8003\u8cc7\u6599<\/h2><ol><li><a class=\"notranslate\" href=\"https:\/\/az.wikipedia.org\/wiki\/%C5%9Eell_%C3%A7e%C5%9Fidl%C9%99m%C9%99si\">\u015eell \u00e7e\u015fidl\u0259m\u0259si \u2013 azerba\u00efdjanais<\/a><\/li><li> <a class=\"notranslate\" href=\"https:\/\/bg.wikipedia.org\/wiki\/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D1%8A%D0%BC_%D0%BD%D0%B0_%D0%A8%D0%B5%D0%BB\">\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u044a\u043c \u043d\u0430 \u0428\u0435\u043b \u2013 bulgare<\/a><\/li><li> <a class=\"notranslate\" href=\"https:\/\/cs.wikipedia.org\/wiki\/Shellovo_%C5%99azen%C3%AD\">Shellovo \u0159azen\u00ed \u2013 tch\u00e8que<\/a><\/li><li> <a class=\"notranslate\" href=\"https:\/\/da.wikipedia.org\/wiki\/Shellsortering\">Shellsortering \u2013 danois<\/a><\/li><li> <a class=\"notranslate\" href=\"https:\/\/de.wikipedia.org\/wiki\/Shellsort\">Shellsort \u2013 allemand<\/a><\/li><li> <a class=\"notranslate\" href=\"https:\/\/en.wikipedia.org\/wiki\/Shellsort\">Shellsort \u2013 anglais<\/a><\/li><\/ol><\/div>\n<div class=\"feature-video\">\n <h2>\n  \u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 &#8211; \u5b9a\u7fa9\u30fb\u95a2\u9023\u52d5\u753b\n <\/h2>\n <div class=\"video-item\">\n  \n  <figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\">\n   <div class=\"wp-block-embed__wrapper\">\n    <iframe loading=\"lazy\" title=\"\u3010\u521d\u5fc3\u8005\u5411\u3051\u3011\u30d2\u30fc\u30d7\u30bd\u30fc\u30c8\u3068\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8\u306b\u3064\u3044\u3066\u5b66\u307c\u3046\uff01\u3010\u57fa\u672c\u60c5\u5831\u6280\u8853\u8005\u8a66\u9a13\u3011\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/asm_JRzCqgw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n   <\/div>\n  <\/figure>\n  \n <\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u5c0e\u5165 \u30b7\u30a7\u30eb\u30bd\u30fc\u30c8\u307e\u305f\u306f\u82f1\u8a9e\u3067\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8\u306f\u3001\u30bd\u30fc\u30c8\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3067\u3059\u3002\u3053\u308c\u306f\u5b9f\u884c\u901f\u5ea6\u306e\u70b9\u3067\u633f\u5165\u30bd\u30fc\u30c8\u306b\u6bd4\u3079\u3066\u9855\u8457\u306a\u6539\u5584\u3067\u3059\u304c\u3001\u3053\u306e\u30bd\u30fc\u30c8\u306f\u5b89\u5b9a\u3057\u3066\u3044\u307e\u305b\u3093\u3002\u3053\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u304c\u3069\u306e\u3088\u3046\u306b\u52d5\u4f5c\u3059\u308b\u304b\u3092\u76f4\u611f\u7684\u306b\u7406\u89e3\u3059\u308b\u306e\u306f\u7c21\u5358 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":19985,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/img.youtube.com\/vi\/asm_JRzCqgw\/0.jpg","fifu_image_alt":"\u30b7\u30a7\u30eb\u30bd\u30fc\u30c8 - \u5b9a\u7fa9","footnotes":""},"categories":[5],"tags":[3350,11,13,14,10,1091,12,8,16,15,9,21739],"class_list":["post-19984","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dictionary","tag-shell","tag-techniques","tag-technologie","tag-news","tag-actualite","tag-tri","tag-dossier","tag-definition","tag-sciences","tag-article","tag-explications","tag-tri-de-shell"],"_links":{"self":[{"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/posts\/19984"}],"collection":[{"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/science-hub.click\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=19984"}],"version-history":[{"count":0,"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/posts\/19984\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/science-hub.click\/index.php?rest_route=\/wp\/v2\/media\/19985"}],"wp:attachment":[{"href":"https:\/\/science-hub.click\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=19984"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/science-hub.click\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=19984"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/science-hub.click\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=19984"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}