moaminsharifi/fa-wiki-spell-checker huggingface dataset:
یعنی احتمال دیده شدن توالی X در مدل M برابر است با جمع احتمال دیده شدن توالی به شرط تمامی مسیرها که آن هم برابر است با
بنابر این می‌توانیم روابط بازگشتی زیر را حساب کنیم:
ورودی این الگوریتم: مدل M با الفبای formula_8 احتمال‌های انتفال p و احتمال تولید الفبای e همچنین توالی‌ای از نشانه‌ها X
خروجی: احتمال تولید این توالی توسط مدل
این الگوریتم به صورت پویا متغیر formula_9 را می‌سازد، که به معنی احتمال زیرتوالی formula_10 تا formula_11 در حالت l است.
Input: HMM M = (formula_8، Q, P, e) and sequence of symbols X
Output: probability P(X|M)
Initialization: (i=0): formula_13 for k>0.
For all formula_14
Termination:P(X|M)=formula_16
در الگوریتم backward رابطه بازگشتی برای محاسبه احتمال به صورت زیر است:
متغیر formula_19 احتمال مشاهدی زیرتوالی formula_11 تا formula_21 است در صورتی که در حالت k قرار داشته باشیم.
Initialization: (i=L): formula_23 for all k.
For all i=formula_24:
Termination:P(X|M)=formula_26
وقتی با داده‌های آموزش سر و کار داریم، گاهی اوقات داده ها همه حالات را پوشش نمی‌دهند مثلاً در مورد مسایل مدل پنهان مارکوف، احتمال دارد در مجموعه داده‌های آموزشی ما به دلایل مختلف انتقال از حالت i به حالت j مشاهده نشود در صورتی که این یک انتقال ممکن باشد، بنابراین احتمال این انتقال صفر محاسبه می‌شود که می‌تواند الگوریتم را به سمت جواب غلط پیش ببرد.
برای رفع این مشکل از شبه‌شماره‌ها( Pseudocount s) استفاده می‌کنیم. به این صورت که یک عدد کوچک را جای احتمال صفر، جایگزین می‌کنیم.
الگوریتم باوم-ولچ یک الگوریتم تکرار شونده است. ابتدا پارامترهای مدل به صورت تصادفی انتخاب می‌شوند و سپس در هر تکرار سعی می‌شود این پارامترها طوری اصلاح شوند که مدل به داده‌های آموزشی نزدیک شود. می‌توان آنقدر الگوریتم را تکرار کرد که تغییر قابل ملاحظه‌ای در پارامترهای بدست آمده رخ ندهد.
ورودی: مدل و داده‌های آموزشی formula_27
خروجی: مدل با پارامترهای انطباق یافته
شروع: ماتریس‌های P و E را به صورت دلخواه مقداردهی می‌کنیم.
قرار می‌دهیم: formula_28 یا اینکه با شبه‌شماره جایگزین می‌کنیم
برای تمامی توالی‌های formula_29:
شبه‌شماره‌ها را در صورت لزوم اعمال می‌کنیم.
قرار می‌دهیم: formula_35
پایان: درجه درست‌نمایی بیشینه را محاسبه می‌کنیم، اگر تغییر چندانی نکرد یا اینکه به تعداد مشخصی از تکرار رسیدیم، به الگوریتم خاتمه می‌دهیم.
ناحیهٔ سربند یکی از ناحیه‌های اداری ولایت ختلان است که در جنوب کشور تاجیکستان جای دارد و مرکز این ناحیه، جماعت سربند است.
بر پایهٔ آمار سال ۲۰۰۲ میلادی، این ناحیه ۱۴٫۱۶۸ نفر جمعیت داشته‌است.
شهرک عدالت یکی از روستاهای قدیمی و مهم شهرستان دزفول می‌باشد.
مردم این روستا طوایف بختیاری هستند.
زول که مخفف عبارت (XML User Interface Language) است یک زبان برنامه‌نویسی کامپیوتری است که بوسیله بنیاد موزیلا توسعه داده می‌شود. زول یک زبان نشانه گذاری واسط کاربر است که به عنوان یک گویش از اکس‌ام‌ال اجرا شده‌است و به اجازه می‌دهد که واسط‌های گرافیکی کاربر شبیه صفحه وب نوشته شوند.
زول را می‌توان برای نوشتن ابزارهای چندسکویی همچون فایرفاکس شرکت موزیلا استفاده کرد که توسط موتور ترسیم معروف به گِکو تفسیر می‌شود که وظیفه نمایش رابط کاربری فایرفاکس و صفحات وب را دارد.
زبان زول متکی بر استانداردها و تکنولوژی‌های موجود وِب شامل سی‌اس‌اس، جاوااسکریپت و مدل شی‌گرای سند می‌باشد. چنین وابستگی‌هایی، یادگیری زبان زول را برای افرادی که پیش‌زمینه‌هایی در برنامه‌نویسی و طراحی وب دارند آسان می‌نماید.
شرکت موزیلا نسخه آزمایشی اجراکننده زول را مهیا کرده که به توسعه‌دهندگان این اجازه را می‌دهد تا ابزارشان را بر روی چارچوب‌کاری شرکت موزیلا و مشخصا زبان زول، پیاده‌سازی کنند.
زول تعریف قابل‌حمل بودن را برای ویجت‌ها به نحوی مهیا می‌کند که به آن‌ها اجازه می‌دهد تا به راحتی بر روی هر سکویی که ابزار موزیلا بر روی آن اجرا شده‌است، قابل انتقال باشند.
رابط زول عموماً به مجموعه‌ای از عناصر زیر تقسیم می‌شود:
نام زول برگرفته از فیلم شکارچیان روح محصول سال ۱۹۸۴ است که در آن روح خدای سومریان باستان به نام زوول کالبد شخصیت داستان به نام دَنا بَرِت را تسخیر می‌کند و عنوان می‌کند که «در اینجا دَنایی وجود ندارد، تنها زوول». از آنجایی که زول، همانند زبان MXML از اکس‌ام‌ال برای تعریف رابط‌ها و نه اسناد استفاده می‌کند، توسعه دهندگان را واداشت تا از تکیه کلام «در اینجا داده‌ای وجود ندارد، تنها زوول» استفاده کنند. از این رو پیوند نام‌کاری در ابتدای اسناد زول به شکل زیر می‌باشد:
واژه‌هایی همچون ارباب‌کلید و نگهبان دروازه نیز از خط سیر داستان فیلم شکارچیان روح گرفته شده‌است. دیگر ارجاعات به فیلم شکارچیان روح در محصولات شرکت موزیلا شامل برنامه رفع‌خطای جاوااسکریپت به نام ونکمن می‌باشد که برگرفته از یکی دیگر از شخصیت‌های این فیلم می‌باشد.
از زبان زول به صورت عمده برای ایجاد ابزارهای شرکت موزیلا و گسترش دهنده‌های آن‌ها استفاده می‌شود هرچند در ابزارهای تحت وبی که بر روی پروتکل HTTP تبادل داده دارند نیز مورد استفاده قرار می‌گیرد. مرورگر شرکت موزیلا برای سایت آمازون که نمونه‌ای مشخصی از چنین کاربردی می‌باشد، رابط قوی‌ای را برای جستجوی کتاب در سایت آمازون برا کاربران مهیا کرده‌است.
از آنجایی که جیکو تنها پیاده‌سازی کامل را از زول انجام داده‌است، چنین ابزاری طبیعتاً برای کاربران مرورگرهای مبتنی بر چیزی غیر از مرورگر شرکت موزیلا، غیرقابل دسترس خواهد بود.
دیگر ابزار مبتنی بر زول عبارتند از:
این مثال سه دکمه را در یک جعبه نگهدارنده عمودی، نمایش می‌دهد:
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window id="vbox example" title="Example 3..."
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
</window>
گراف کاتز یا formula_1 یک گراف جهت‌دار از مرتبهٔ formula_2 و بُعد formula_3 است که دارای formula_4 راس است که این راس‌ها به وسیلهٔ تمام رشته‌های ممکن formula_5 با طول formula_3 که از کارکترهای formula_7 از الفبای formula_8 که شامل formula_9 نماد(حرف) مجزا است برچسب گذاری شده‌اند و در این برچسب گذاری هیچ دو حرف مجاوری برابر نیستند(formula_10).
گراف کاتز formula_1 شامل formula_12 یال است
معمول است که هر یال از formula_1 را با formula_15 برچسب گذاری می‌کنند، که این کار یک نگاشت دوسویی بین یال‌های گراف کاتز formula_1 و راس‌های گراف کاتز formula_17 را نتیجه می‌دهد.
کراف کاتز به‌طور بسیار نزدیکی به گراف دی براین مربوط است.
گراف کاتز به عنوان یک ساختار شبکه برای وصل کردن پردازشگرها در محاسبات بسیار سریع و محاسبات مقاوم در برابر خطا، استفاده شده‌است. کاربرد: چنین شبکه‌هایی به عنوان "شبکه کاتز" شناخته می‌شوند.
پارک قصر بازی یکی از پارک‌های شهر رشت بوده که سومین پارک مکانیزهٔ شهر رشت و اولین پارک مسقف شمال ایران می‌باشد. قصر بازی در فروردین ۱۳۹۰ به طور رسمی افتتاح شد.
تلفن‌های مجموعه: ۳۴۴۹۱۲۰۶ الی ۳۴۴۹۱۲۰۹ با پیش شماره ۰۱۳ شهر رشت و استان گیلان.
پروژه ساخت اولین و تنها پارک تفریحی سرپوشیده شمال کشور در سال ۱۳۸۷ با بررسی لازم و تهیه زمین مناسب در جاده رشت به انزلی آغاز شد. فاز اول مجموعه قصر بازی در زمینی به مساحت ۴۵۰۰۰ متر مربع و زیربنای پوشیده ۷۵۰۰ متر مربع و در دو طبقه ساخته شده‌است. مجموعه قصر بازی در فروردین ۱۳۹۰ به‌طور رسمی افتتاح گردید.
طراحی این مجموعه توسط جناب آقای دکتر رئیس سمیعی صورت گرفته است.
مرکز بازی‌های شاد و هیجان انگیز در دو طبقه با مساحت ۵۰۰۰ متر مربع
کافی شاپ مرکزی
سالن بولینگ با ۱۲ خط استاندارد ورزشی
سالن بیلیارد با ۵ میز استاندارد
رستوران با تراس
آمفی تئاتر با ظرفیت بیش از ۱۰۰ نفر برای جشنهای تولد و سایر مراسمهای خانوادگی، مهد کودک‌ها و دیگر مراسم فرهنگی
کافی شاپ کلاه‌فرنگی کنار برکه
پارکینگ برای ۳۰۰ خودرو
در جبر مجرد که شاخه‌ای از ریاضیات است، مونوئید (یا تَکواره) ساختاری جبری با یک عملگر دوتایی یک عضو خنثی است. تکواره ها از آنجا که به‌طور طبیعی نیم-گروه‌هایی با عضو خنثی هستند، مونوئیدها در شاخه های مختلفی از ریاضیات و علوم کامپیوتر پدیدار می گردند. تکواره های انتقالی و تکواره های نحوی در توصیف ماشین‌های حالت متناهی استفاده می‌شوند. برخی از نتیجه‌های مهم تر در مطالعهٔ تکواره ها، نظریه کراهن-رودز (Krohn-Rhods) و مسئلهٔ (star height) هستند. تاریخچهٔ تکواره ها را می‌توان در مقاله‌های مربوط به نیمگروها جستجو کرد.
تکواره، مجموعه‌ای چون S است، به همراه یک عملگر دودویی "." (که ضرب یا نقطه نامیده می‌شود) و دارای سه شرط زیر است:
این سه شرط را می‌توانیم به فرم ریاضیاتی به صورت زیر بنویسیم:
به‌طور خلاصه‌تر، یک تکواره یک نیم‌گروه است، به همراه یک عضو خنثی. یک تکواره اگر خاصیت معکوس‌پذیری برای هر عضو را داشته باشد، تشکیل یک گروه می‌دهد.
معمولاً نماد عمل دودویی حذف می‌شود. مثلاً formula_12 و formula_13. این طریق نوشتن لزوماً این معنی را نمی‌دهد که متغیرها اعدادی هستند که در هم ضرب می‌شوند، بلکه هر عمل یا عنصری می‌تواند استفاده شود، البته اگر خوش تعریف باشند.
شکست بهمنی از گونه‌های شکست دیودی است.
دیود از پیوند نیمه‌رسانا P-N تشکیل شده‌است و می‌تواند در بایاس مستقیم یا معکوس قرار گیرد. در بایاس معکوس، جریان اشباع معکوس یا جریان نشتی از دیود عبور خواهد کرد که بسیار کم و در حدود چند نانوآمپر است (بسته به جنس دیود که ژرمانیوم باشد یا سیلیسیم).Base of Semiconductor Authors R.F.Peirret & G.W.neudeck
در محل پیوند، میدان الکتریکی از طرف N به P است. در بایاس مستقیم ولتاژ منبع باید بر این میدان غلبه کند تا جریان قابل قبول از دیود بگذرد. اما در بایاس معکوس، شدت میدان افزایش یافته و ناحیه تهی دیود افزایش می‌یابد. در دیود ایده‌ال و در بایاس معکوس، با افزایش ولتاژ، جریان اشباع معکوس ثابتی می‌گذرد. اما در دیود واقعی با رسیدن ولتاژ معکوس به حدی خاص، دیود وارد فاز شکست می‌شود. شکست دیود دو حالت دارد:
شکست بهمنی: در محل پیوند و اطراف آن، میدان الکتریکی وجود دارد که شدت آن درست در محل پیوند بیشینه است و بایاس معکوس این میدان را تقویت می‌کند. هرچه شدت این میدان بیشتر باشد، سرعت رانش حامل‌ها بزرگتر خواهد بود. به ازای یک مقدار بحرانی برای شدت میدان الکتریکی، حاملها به‌طور متوسط چنان شتاب می‌گیرند که انرژی کافی برای برخورد با شبکه بلور و شکستن پیوندهای بلوری را داشته باشند. این فرایند با آزاد شدن یک زوج الکترون-حفره همراه است. حاملی که به شبکهٔ بلور برخورد می‌کند، انرژی بالایی دارد که می‌تواند یک الکترون نوار ظرفیت را برانگیخته و به نوار رسانش ببرد. با حرکت الکترون از نوار ظرفیت، یک جای خالی الکترون (حفره) به وجود خواهد آمد. اکنون هر سه حامل (یک الکترون و دو حفره) آزاد هستند تا توسط میدان الکتریکی شتاب گیرند و در برخوردهای دیگر، حامل‌های دیگری را با همان روش آزاد کنند. این پدیده را، که مانند بهمن در کوهستان‌هاست، پدیدهٔ شکست بهمنی می‌نامند.مبانی نیمه هادی ترجمه دکتر محمد کاظم فرشچی
هر حامل تنها، چه الکترون و چه حفره، دو حامل تولید می‌کند که هر کدام از آنها زوج‌های الکترون-حفره دیگری تولید می‌کنند.مبانی الکترونیک جلد اول دکتر علی میر عشقی
در بیوشیمی، حالت طبیعی یک پروتئین یا اسید نوکلئیک عبارت است از شکل تا شده یا/و جمع شدهٔ آن، که یک حالت عمل‌کننده و دارای وظیفه را به آن می‌دهد. حالت طبیعی یک زیست‌مولکول می‌تواند تمامی ۴ سطح ساختار زیست‌مولکولی را به خود بگیرد، که ساختار دوم تا چهارم از فعل و انفعالات ضعیف در ستون فقرات پیوندهای کووالانسی شکل می‌گیرند. این حالت، با حالت تغییر شکل داده شده متضاد است، که در آن، این پیوندهای ضعیف از هم گسسته‌اند، که منجر به از بین رفتن شکل ساختارها به جز ساختار اولیهٔ زیست‌مولکولی می‌شود.
درحالی‌که تمامی مولکول‌های پروتئین با زنجیره‌های ساده و بدون انشعاب از اسید آمینه‌ها شروع می‌شوند، وقتی کامل می‌شوند، شکل‌های سه‌بعدی خیلی خاصی را به خود می‌گیرند؛ آن شکل نهایی، که به عنوان ساختار سوم شناخته می‌شوند، شکل تا شده‌ای است که دارای کمترین میزان انرژی آزاد است. همین ساختار سوم پروتئین که به صورت تا شده است، پروتئین را قادر به اجرای وظایف زیستی‌اش می‌سازد. در حقیقت، تغییرات در شکل پروتئین‌ها، منشأ اولیهٔ چندین بیماری انحطاط اعصاب است، از جمله بیماری‌هایی که توسط پریون‌ها و آمیلویدها به وجود می‌آیند (مانند جنون گاوی، بیماری کورو و بیماری کروتزفلد جاکوب).
تعداد زیادی از آنزیم‌ها و پروتئین‌های غیرساختاری دیگری، بیشتر از یک حالت طبیعی دارند، و با تبدیل بین این حالت‌ها عمل می‌کنند یا دستخوش تنظیمات می‌شوند. با این حال، «حالت طبیعی» تقریباً به‌طور انحصاری برای یک حالت و معمولاً برای متمایز ساختن پروتئین‌های تا شده از پروتئین‌های تغییر شکل داده شده یا پروتئین‌های باز شده به کار می‌رود. در متون دیگر، شکل تا شدهٔ یک پروتئین بیشتر به ترکیب یا ساختار طبیعی آن اشاره دارد. پروتئین‌های تا شده و باز شده، اغلب به سادگی با بررسی حلالیت آن‌ها در آب، تشخیص داده می‌شوند، چرا که پروتئین‌های زیادی پس از تغییر شکل دادن حل‌ناپذیر می‌شوند. پروتئین‌ها در حالت طبیعی، ساختار دومی را تعریف خواهند کرد که می‌تواند به صورت طیفی، با دو رنگ‌تابی دورانی و با رزونانس مغناطیسی هسته‌ای (NMR) تشخیص داده می‌شوند.
در الگوریتم‌هایی که نوشته شده‌اند،ز جمله: الگوریتمی که تعداد N عدد صحیح را می‌خواند و در آرایه‌ای قرار می‌دهد و در آخر مجموع انحراف از میانگین این اعداد را محاسبه کرده و به خروجی می‌برد،... و مثال‌هایی از این قرار. ملاحظه می‌کنیم که الگوریتم ممکن است از بخش‌های تکرار شونده تشکیل شده باشد. محاسبه فاکتوریل اعداد، محاسبه قدر مطلق، بخش خواندن عناصر آرایه، بخش چاپ عناصر آرایه، و… از بخش‌هایی بودند که در الگوریتم‌ها به وفور مورد استفاده قرار گرفته‌اند. می‌توان برای هر بخش از مسئله یک الگوریتم نوشت و سپس آن‌ها را در الگوریتم کلی با هم ترکیب کرد. الگوریتمی که برای حل بخشی از مسئله نوشته می‌شود، زیراَلگوریتم نام دارد.
نوشتن زیر الگوریتم‌ها برای حل مسئله، امتیازاتی دارند که بعضی از ان‌ها را برمی‌شماریم:
۱. همکاری افراد را امکان‌پذیر می‌سازد، به طوری که یک مسئله را می‌توان به چند بخش تقسیم کرد و نوشتن الگوریتم هر بخش را به عهده افراد مختلفی گذاشت و سپس ان الگوریتم‌ها را با هم ترکیب کرد.
۲. از تکرار نوشتن دستور العمل‌ها جلوگیری می‌کند.
۳. عیب‌یابی و اشکال‌زدایی الگوریتم‌ها ساده‌تر می‌شود.
۴. زیرالگوریتم‌هایی را که در یک الگوریتم نوشته شدند، به همان صورت یا با تغییر اندک می‌توان آن‌ها را در الگوریتم‌های دیگر به کار برد.
هر زیر الگوریتم دارای دو جنبه‌است:
۱. جنبه تعریفDefinition aspects
۲. جنبه فراخوانیcall aspects
جنبه تعریف زیر الگوریتم، مجموعه دستورهایی است که عملکرد زیر الگوریتم را مشخص می‌کند.
جنبه فراخوانی زیر الگوریتم، دستوری است که زیر الگوریتم را فراخوانی می‌کند. فراخوانی زیر الگوریتم با نام آن انجام می‌شود.
هر زیر الگوریتم دارای نامی است که توسط ان فراخوانی می‌شود. نامگذاری برای زیر الگوریتم‌ها از قانون نام گذاری برای متغیرها تبعبت می‌کند.
هر الگوریتم برای ارتباط با زیر الگوریتم یا تبادل اطلاعات با آن، می‌تواند تعدادی از متغیرهای خودش را به زیر الگوریتم بفرستد یا اطلاعاتی را از الگوریتم دریافت کند. این اطلاعات را که بین زیر الگوریتم و الگوریتم تبادل می‌شود، پارامتر می‌گویند؛ بنابراین پارامترها می‌توانند ورودی یا خروجی باشند.
پارامترهای ورودی آنهایی هستند که از الگوریتم به زیر الگوریتم فرستاده می‌شوند و پارامترهای خروجی آنهایی هستند که از زیر الگوریتم به الگوریتم فرستاده می‌شوند.
زیر الگوریتم ممکن است هم دارای پارامتر ورودی و هم خروجی باشد، ممکن است فقط پارامتر ورودی داشته باشد، ممکن است فقط پارامتر خروجی داشته باشد، یا اصلاً پارامتر نداشته باشد. اگر زیر الگوریتم دارای پارامتر باشد، اسامی پارامترها در جلوی نام زیر الگوریتم و در داخل پرانتز قرار می‌گیرند و با کاما(,) از هم جدا می‌شوند. به عنوان مثال، زیر الگوریتم زیرا در نظر بگیرید:
MAX(X,Y,Z)
نام این زیر الگوریتم MAX است و دارای سه پارامتر X,Y،Z می‌باشد.
الگوریتمی که زیر الگوریتمی را فراخوانیمی‌کند، انتظار دارد که زیر الگوریتم مقادیری را به الگوریتم فراخوان برگرداند. زیر الگوریتم‌ها را می‌توان به دو دسته تقسیم کرد:
۱. زیر الگوریتم‌های تابع(FUNCTION)
۲. زیر الگوریتم‌های زیر روال(SUBROUTINE)
زیر الگوریتم‌های تابع، فقط می‌تواند یک مقدار را به الگوریتم فراخوان برگردانند. این مقدار، در نامشان قرار می‌گیرد؛ لذا در بدنهٔ الگوریتم، نام تابع، حداقل یکبار باید مقدار گیرد.
زیر الگوریتم‌های زیر روالمی‌توانند هیچ مقداری را برنگردانند، یک مقدار یا چند مقدار را برگردانند؛ ولی باید دقت داشت که زیر الگوریتم‌هایی که یک مقدار را برمی‌گردانند، بهتر است به صورت تابع نوشته شوند.
۱. تمام دستورها الگوریتم را می‌توان در آن نوشت.
۲. فقط یک مقدار را به الگوریتم اصلی منتقل می‌کند.
۳. تغییرات بروی پارامترها را به الگوریتم اصلی منتقل نمی‌کند.
۴. نام زیر الگوریتم، مقدار را به الگوریتم فراخوان منتقل می‌کند. پس باید نام زیر الگوریتم حتماً در سمت چپ قرار گیرد.
۲. صفر یا بیش از یک خروجی را به الگوریتم اصلی منتقل می‌کند.
۳. تغییرات بر روی پارامترها به الگوریتم اصلی منتقل خواهد شد.
۴. به نام زیر الگوریتم رویه هیچ وقت مقداری نسبت داده نمی‌شود.
همان‌طور که مشاهده کردید می‌توان یک زیر الگوریتم تابع را به فرم زیر الگوریتم رویه نوشت ولی هیچ وقت نمی‌توان وقتی بیش از یک خروجی داریم از زیر الگوریتم تابع استفاده کنیم.
برای فراخوانی زیر الگوریتم، و برگشت از زیر الگوریتم، از نمادهای زیر در فلوچارت استفاده می‌شود.
۱. از مستطیل برای فراخوانی زیر الگوریتم (داخل آن نام زیر الگوریتم (مثلاً: (MAX(X,Y,Z))
۲. از بیضی برای برگشت به الگوریتم
مرتب‌سازی هرمی ، نوعی الگوریتم است که در آن از مقایسه برای چینش یک آرایه یا فهرست استفاده می‌شود. این الگوریتم بخشی از خانوادهٔ مرتب‌سازی انتخابی است. با وجود اینکه در اکثر رایانه‌ها از الگوریتم چینش سریع کندتر است ولی در بدترین حالت سرعت بالاتر(formula_1) را دارا می‌باشد. این الگوریتم در محل است، ولی حالت پایداری ندارد.
در این مرتب‌سازی، ابتدا از کل آرایه داده شده یک درخت مکس هیپ (یا درخت مین هیپ) می‌سازد. سپس بزرگترین مقدار را برمی‌دارد و در انتهای آرایه مرتب شده قرار می‌دهد. بعد از حذف بزرگترین مقدار، دوباره از بقیه اعداد یک درخت مکس هیپ می‌سازد تا دومین عدد بزرگ یافت شود. بزرگ‌ترین مقدار در بین مقادیر باقی‌مانده را برمی‌دارد و آن را در مکان یکی قبل از انتهای آرایه قرار می‌دهد. این کار تا زمانی که هیچ مقداری در هرم باقی نماند و آرایه مرتب شده کامل شود، تکرار می‌شود.
یکی از روش‌های مرتب‌سازی داده‌هااست، که براساس خصوصیات درخت heap پیاده‌سازی شده‌است.
بر اساس تعریف درخت heap، در یک max-heap یا min-heap بزرگترین یا کوچکترین مقدار بین داده‌ها همواره در ریشه درخت قرار دارد. یافتن بزرگترین یا کوچکترین عنصر بین عناصر، هزینه ثابت (Ө(۱ دارد. با حذف این عنصر از درخت، بزرگترین یا کوچکترین عنصر بعدی مجدداً در ریشه قرار می‌گیرد. به این ترتیب با حذف متوالی عناصر درخت heap و درج آن‌ها در محل جدید، یک آرایه مرتب‌شده نزولی ویا صعودی به دست خواهد آمد.
به عنوان مثال، min-heap زیر راتوضیح می‌دهیم:
مراحل مرتب‌سازی هرمی به ترتیب زیر خواهد بود:
Step 0) min-heap: 1, 4, 5, 8, 6, 9 -list:
Step 1) min-heap: 4, 6, 5, 8, 9 -list:1
Step 2) min-heap: 5, 6, 9, 8 -list:1 ,4
Step 3) min-heap: 6, 8, 9 -list:1, 4,5
Step 4) min-heap: 8, 9 -list:1, 4, 5, 6
Step 5) min-heap: 9 - list:1, 4, 5, 6,8
Step 6) min-heap: -list: 1, 4, 5, 6, 8, 9
که در آخر، آرایه list شامل اطلاعات مرتب‌شده صعودی است.
برای مرتب‌کردن عناصر با استفاده از درخت heap، نیاز به n عمل حذف گره ریشه از درخت دارد. عمل حذف گره ریشه در درخت heap خود از مرتبه (Θ(log n است. در نتیجه کل این عملیات از مرتبه (Θ(n log n خواهد بود.
نکته قابل توجه دیگر، ساخت درخت heap از عناصر مورد نظر برای مرتب‌سازی است. در حالت عادی عناصر به صورت نامرتب و با چیدمان تصادفی در اختیار هر الگوریتم مرتب‌سازی قرار می‌گیرند. در این حالت یک هزینه زمانی دیگر برای ساخت درخت heap از روی چنین فهرستی مورد نیاز است.
در روش بحث شده برای مرتب کردن n عنصر، دو آرایه n عنصری نیاز است. یکی از این آرایه‌ها عناصر را به فرم درخت heap به عنوان ورودی الگوریتم، و دیگری عناصر مرتب شده را به عنوان خروجی الگوریتم شامل می‌شوند. در چنین حالتی این الگوریتم یک روش مرتب‌سازی درجا نیست. با اندکی تغییر در روش پیاده‌سازی الگوریتم می‌توان عملکرد دو آرایه را در یک آرایه ادغام کرده، و میزان حافظه مصرفی را کاهش داد.
درخت min-heap مثال فوق را در نظر بگیرید. با حذف عدد یک به عنوان گره ریشه درخت و اعمال تغییرات لازم به نتیجه زیر می‌رسیم:
خط عمودی پررنگ، انتهای اطلاعات درخت در آرایه را نشان می‌دهد. خانه شماره ۶ حاوی اطلاعات بلا استفاده‌است. پس می‌توانیم عنصر حذف شده را در آن قرار دهیم:
توجه = در حال حاضر درخت از پنج عنصر تشکیل شده‌است و عنصر ششم آرایه از عناصر درخت نیست. به همین ترتیب با حذف مجدد گره ریشه با مقدار ۴ آرایه زیر حاصل می‌شود:
و با درج عنصر حذف شده در محل بلا استفاده:
به همین ترتیب با تکرار الگوریتم نتیجه نهایی حاصل می‌شود:
باید توجه داشت که بر خلاف نتیجه نهایی روش قبل، در این حالت عناصر به صورت نزولی به دست آمده‌اند. یعنی در این روش از درخت min-heap برای مرتب‌سازی نزولی و از درخت max-heap برای مرتب‌سازی صعودی استفاده می‌شود.
می‌توانیم برای تبدیل آرایه[A[1..n به یک max-Heap که [n=length[A از روال MAX-HEAPIFY به روش پایین به بالا استفاده کنیم. از آنجایی که عناصر زیر آرایه [A[(n/2)+1)...n همگی برگ‌های درخت هستند و بنابراین هر کدام یک Heap یک عنصری برای شروع است، روالBUILD-MAX-HEAP در راستای گره‌های باقی‌مانده درخت حرکت کرده و برای هر یک MAX-HEAPIFY را اجرا می‌کند.
BUILD-MAX-HEAP(A)
1 heap-size=length[A]
2 for i=length[A]/2 downto 1
3 do MAX-HEAPIFY(A,i)
MAX-HEAPIFY یک زیرروال مهم برای دستکاری max-Heapها است. ورودی آن آرایهA و اندیس i در آرایه‌است. زمانی که MAX-HEAPIFY فراخوانی می‌شود، فرض می‌شود که درخت‌های دودویی مشتق شده از فرزندان چپ و راستش،max-Heap هستند، ولی عنصر[A[iممکن است کوچکتر از فرزندانش باشد، بنابراین ویژگی max-Heap مورد تخطی قرار می‌گیرد. وظیفه MAX-HEAPIFY این است که مقدار موجود در [A[i را در max-Heap به پایین حرکت دهد تا زیر درخت مشتق شده ازi، یک max-Heapشود.
MAX-HEAPIFY(A,i)
1 l=LEFT(i)
2 r=RIGTH(i)
3 if(l≤heap-size[A] &&A[l[>A[i]
4 then largest=l
5 else largest=i
6 if(r≤heap-size[A] && A[r]>A[largest]
7 then largest=r
8 if (largest≠i)
9 then swap(A[i],A[largest])
10 MAX-HEAPIFY(A,largest)
دو نوع Heap دودویی وجود دارد:max-Heapها وmin-Heapها. در هر دو نوع، مقادیر درون گره‌ها ویژگی Heap را ارضاء می‌کنند که ویژگی‌های هرکدام به نوع Heap بستگی دارند. ویژگیmax-Heap این است که برای هر گره i به جزء ریشه:
A[PARENT(i)]>A[i]
PARENT(i)
return i/2
به عبارت دیگر مقدار یک گره حداکثر برابر مقدار پدرش است؛ بنابراین بزرگترین عضو max-Heap در ریشه ذخیره می‌شود. ویژگی min-Heap به صورت بر عکس شکل می‌گیرد. کوچکترین عضو در ریشه قرار می‌گیرد. در این الگوریتم مرتب‌سازی ازmax-Heap استفاده کردیم.
1 BIULD-MAX-HEAP(A)
2 for(i=length [A] downto 2)
3 do swap(A[1],A[i])
4 Heap-size[A]=Heap-size[A]-1
5 MAX-HEAPIFY(A,1)
روال HEAPSORT زمان (O(n lgn را صرف می‌کند چون فراخوانی BUILD-HEAPزمان (O(n و هر یک از n-1 فراخوانی MAX-HEAPIFY زمان
(O(lgn را صرف می‌کند.
خط عمودی پررنگ، انتهای اطلاعات درخت در آرایه را نشان می‌دهد. خانه شماره ۶ حاوی اطلاعات سوخته و بلا استفاده‌است. پس می‌توانیم عنصر حذف شده را در آن قرار دهیم:
توجه داشته باشید که در حال حاضر درخت از پنج عنصر تشکیل شده‌است و عنصر ششم آرایه از عناصر درخت نیست. به همین ترتیب با حذف مجدد گره ریشه با مقدار ۴ آرایه زیر حاصل می‌شود:
روش مرتب‌سازی انتخابی (Selection Sort) یکی از روش‌های اولیه مرتب‌سازی بر اساس مقایسه عناصر است. این الگوریتم طی چند مرحله عناصر فهرست را به صورت صعودی یا نزولی مرتب می‌کند. به این ترتیب که در هر مرحله با بررسی عناصر نامرتب، بزرگترین (یا کوچکترین) عنصر را پیدا کرده، و به انتهای فهرست منتقل می‌کند.
فهرست اعداد زیر را در نظر بگیرید، که باید به صورت صعودی (کوچک به بزرگ) مرتب شود:
۲ ۸ ۴ ۱ ۷
در مرحله اول، کل فهرست از ابتدا تا انتها بررسی شده، و بزرگترین عنصر با عنصر انتهای فهرست نامرتب جابجا می‌شود:
۱) ۲ ۸ ۴ ۱ ۷ -> ۲ ۷ ۴ ۱ ۸
در مرحله دوم، پیمایش از ابتدای فهرست تا عنصر چهارم صورت گرفته، و بزرگترین عنصر با عنصر انتهای آن جابجا می‌شود:
۲) ۲ ۷ ۴ ۱ ۸ -> ۲ ۱ ۴ ۷ ۸
علت این که چرا عنصر پنجم بررسی نمی‌شود کاملاً مشخص است. این عنصر در مرحله قبل به عنوان بزرگترین عنصر به انتهای فهرست منتقل شده‌است، و به‌طور حتم نیاز به جابجایی ندارد.
در مرحله سوم، عناصر اول تا سوم بررسی شده و بزرگترین عنصر به انتهای آن منتقل می‌شود:
۳) ۲ ۱ ۴ ۷ ۸ -> ۲ ۱ ۴ ۷ ۸
و در مرحله آخر دو عنصر باقی‌مانده مقایسه می‌شوند:
۴) ۲ ۱ ۴ ۷ ۸ -> ۱ ۲ ۴ ۷ ۸
و به این ترتیب فهرست مرتب می‌شود.
نوروصوت‌شناسی یا آکوستو-اپتیک (Acousto-optics) شاخه‌ای از فیزیک است که به بررسی برهم کنش امواج نوری و امواج صوتی و به خصوص پراش لیزر به وسیلهٔ امواج صوتی می‌پردازد.
اپتیک تاریخچه‌ای بسیار طولانی دارد: از زمان یونانیان باستان تا عصر حاضرTaylor, L.S.. "Optics Highlights: 1. Ancient History" درست مانند اپتیک، آکوستیک نیز تاریخچه‌ای طولانی دارد که به زمان یونانیان باستان بازمی‌گردد."The History of Acoustics". Archived from the original on 3 July 2007. Retrieved 2007-08-07. در مقابل آکوستواپتیک علمی بسیار نوین با تاریخچه‌ای کوتاه‌است. این زمینه از علم با پیش‌بینی بریلوئن در مورد پراش نور به وسیلهٔ امواج صوتی منتشر شده در ماده در سال ۱۹۲۲ میالادی آغاز شد.Brillouin, L. (1922). "Diffusion of Light and X-rays by a Transparent Homogeneous Body". Ann. Phys. (Paris) 17: 88–122 این پیش‌بینی ده سال بعد توسط دبای و سیرزDebye, P. ; Sears, F.W. (1932). "On the scattering of light by supersonic waves". Proc. Nat. Acad. Sci. USA 18 (6): 409–414. Bibcode 1932PNAS...18..409D و همچنین لوکاس و بیکاردLucas, R. ; Biquard, P. (1932). "Optical properties of solid and liquid medias subjected to high-frequency elastic vibrations". Journal Phys آزمایش و تأیید شد.
مورد خاص پراش مرتبهٔ اول تحت یک زاویهٔ فرود خاص (که بریلوئن هم پیش‌بینی آن را کرده بود) برای اولین بار توسط ریتوف دیده شد. رامان و نث در سال ۱۹۳۷ یک مدل عمومی تر را طراحی کردند که پراش‌های مرتبهٔ بالاتر را آشکار کند. این مدل بعدها در سال ۱۹۵۶ توسط فریزو توسعه پیدا کرد. مدل وی قابل تنظیم بر مرتبهٔ پراشی مشخص بود.
اساس نوروصوت‌شناسی، تغییر ضریب شکست به خاطر حضور موج صوتی در ماده‌است. موج صوتی یک شبکهٔ ضریب شکست در ماده به وجود می‌آورد و این شبکه توسط موج نوری «دیده» می‌شود.Gal, M. (2005). Modulation and switching of light. Lecture Notes on Optoelectronics. The University of New South Wales. تغییر ضریب شکست که به خاطر نوسان فشار ایجاد شده، به وسیله آثار شکست نور، بازتاب نور، تداخل و پراش قابل شناسایی است.Scruby, C.B. ; Drain, L.E. (January 1, 1990). Laser Ultrasonics: Techniques and Applications. Taylor & Francis
آکوستو اپتیک شاخه‌ای از فیزیک است که به بررسی برهم کنش امواج نوری و امواج صوتی و به خصوص پراش لیزر به وسیلهٔ امواج صوتی می‌پردازد.
"مقدمه"
اپتیک تاریخچه‌ای بسیار طولانی دارد: از زمان یونانیان باستان تا عصر حاضر درست مانند اپتیک، آکوستیک نیز تاریخچه‌ای طولانی دارد که به زمان یونانیان باستان بازمی‌گردد. در مقابل آکوستواپتیک علمی بسیار نوین با تاریخچه‌ای کوتاه است. این زمینه از علم با پیش‌بینیبریلوئندر مورد پراش نور به وسیلهٔ امواج صوتی منتشر شده در ماده در سال ۱۹۲۲ میالادی آغاز شد. این پیش‌بینی ده سال بعد توسط دبای و سیرزDebye, P. ; Sears, F.W. (1932). "On the scattering of light by supersonic waves". Proc. Nat. Acad. Sci. USA 18 (6): 409–414. Bibcode 1932PNAS...18..409D و همچنین لوکاس و بیکاردLucas, R. ; Biquard, P. (1932). "Optical properties of solid and liquid medias subjected to high-frequency elastic vibrations". Journal Phys آزمایش و تأیید شد.
اساس آکوستو اپتیک، تغییر ضریب شکست به خاطر حضور موج صوتی در ماده است. موج صوتی یک شبکهٔ ضریب شکست در ماده به وجود می‌آورد و این شبکه توسط موج نوری «دیده» می‌شود. تغییر ضریب شکست که به خاطر نوسان فشار ایجاد شده، به وسیله آثار شکست نور، بازتاب نور، تداخل و پراش قابل شناسایی است.Scruby, C.B. ; Drain, L.E. (January 1, 1990). Laser Ultrasonics: Techniques and Applications. Taylor & Francis
"تئوری"
اثر آکوستو اپتیکی در واقع حالت خاصی از فوتوالاستیسیته (تغییر در ضریب گذر دهی الکتریکی به خاطر کشش مکانیکی) است. فوتوالاستیسیته یعنی تغییر مؤلفه‌های ضریب شکست formula_1 به خاطر کشش مکانیکیformula_2a b c d e "Acousto-optic effect". Retrieved 2007-08-07.
که formula_4 تانسور فوتو الاستیک است formula_5
در مورد خاص آکوستواپتبک کشش مکانیکی به خاطر موج صوتی منتشرشده در محیط شفاف ایجاد می‌شود که همین موضوع ضریب شکست را تغییر می‌دهد. اگر موج صوتی موج تخت و با راستای انتشار z باشد داریم:
ضریب شکست رابطهٔ ۲ یک توری پراش می‌سازد که با سرعت صوت حرکت می‌کند. نوری که از این توری عبور کند یک الگوی پراش می‌سازد. رابطهٔ این الگو به شکل زیر است:Scruby, C.B. ; Drain, L.E. (January 1, 1990). Laser Ultrasonics: Techniques and Applications. Taylor & Francis.
که در آن m مرتبهٔ پراش و formula_9 طول موج صوت است.
ابزارهای آکوستو اپتیکی شامل سه گروه زیر هستند:
"۱- مدولاتور آکوستو اپتیکی"
با تغییر پارامترهای موج صوتی مانند دامنه، فاز، فرکانس، و قطبش می‌توان خواص موج نوری را مدوله کرد. برهمکنش نور و صوت همچنین امکان مدوله کردن زمانی و فضایی موج نوری را فراهم می‌آورد.
یک راه ساده برای مدوله کردن پرتوی اپتیکی عبور نور از محیطی است که در آن موج صوتی به‌طور متناوب روشن و خاموش شود. وقتی صوت خاموش باشد زاویهٔ پراش صفر و نور بی تغییر است. با روشن شدن صوت پراش رخ می‌دهد و شدت صوت در زوایای پراش افزایش ی یابد. با ثابت نگاه داشتن فرکانس صوتی و تغییر در توان مولد صوت می‌توان این ابزار را به یک مدولاتور آکوستواپتیکی تبدیل نمود.
در طراحی مدولاتور باید به نحوی عمل کرد که ماکزیمم شدت نور در پرتوی پراشیده رخ بدهد. مدت زمانی که طول می‌کشد صوت از ماده عبور کند نیز محدودیتی بر سرعت سوییچ کردن تحمیل می‌کند. برای همین پرتوی نوری را تا حد ممکن باریک می‌کنند. باریک‌ترین پرتوی نوری ممکن را حد پهنای باند می‌نامند.Simcik, J.. "ELECTRO-OPTIC AND ACOUSTO-OPTIC DEVICES". Archived from the original on 2004-10-18. Retrieved 2004-10-28.
"۲- فیلترهای آکوستو اپتیکی"
رابطهٔ ۴ ارتباطی را میان طول موج صوتی و طول موج نوری نشان می‌دهد. در واقع پرتوی نوری تابیده شده، اگر دارای تعداد زیادی طول موج باشد فقط در طول موج‌های خاصی پراکنده می‌شود. مابقی طول موج‌ها فیلتر خواهند شد.a b c d e "Acousto-optic effect: Filters". Retrieved 2007-08-07.
"۳- منحرف‌کننده‌های آکوستو اپتیکی"
با ایجاد یک تغییر در فرکانس صوت می‌توان تغییر زاویه‌ای در پرتوی نوری ایجاد کرد. این تغییر از رابطهٔ زیر پیروی می‌کند."Acousto-optic effect: Deflector". Retrieved 2007-08-07.
از این خاصیت در ساخت منحرف‌کننده‌ها استفاده می‌کنند.
طراحی الگوریتم دانش ساخت الگوریتم‌ها برای حل مسئله ‌است. طراحی الگوریتم کاربردی را مهندسی الگوریتم می‌نامند. طراحی الگوریتم در بسیاری از راه حل‌های تئوری تحقیق در عملیات، شناسایی و گنجانیده شده‌است، مانند برنامه‌نویسی پویا و تقسیم و غلبه. الگوهای طراحی الگوریتم، تکنیک‌های طراحی و اجرای طرح‌های الگوریتم هستند. در این روزها از طراحی الگوریتم می‌توان در فرایندهای بازیابی اینترنتی و مسیریابی نیز استفاده نمود.
هم اکنون در ایران طراحی الگوریتم‌ها به عنوان درسی در رشته مهندسی کامپیوتر (نرم‌افزار و سخت‌افزار) و فناوری اطلاعات تدریس می‌شود.
در طراحی الگوریتم‌ها مباحثی همچون پیچیدگی زمانی، بازگشتی، روش تقسیم و غلبه، روش حریصانه، روش برنامه‌سازی پویا، تکنیک عقب‌گرد، نظریه P و NP تدریس می‌شود. زبان‌های برنامه‌نویسی رایانه‌های بزرگ مانند زبان ALGOL (برای زبان الگوریتمی)، زبان FORTRAN، زبان COBOL، زبان PL/I، زبان SAIL و SNOBOL ابزار محاسبات برای به اجرا درآوردن یک طراحی الگوریتم است؛ اما یک طراحی الگوریتم (a/d) یک زبان نیست، یک a/d می‌تواند یک روش دست نوشته باشد، به‌طور مثال مجموعه‌ای از معادلات. یک سری از فرایندهای مکانیک انجام‌شده توسط دست، قطعه آنالوگ از تجهیزات یا فرایند دیجیتال و پردازنده است. یکی از مهم‌ترین جنبه‌های طراحی الگوریتم، ایجاد یک الگوریتم است که دارای یک زمان اجرای کارآمد باشد، که به عنوان او بزرگ (big O) شناخته شده‌است.
کارایی، تحلیل و مرتبه الگوریتم‌ها
نوشتن الگوریتم به زبان فارسی دو ایراد دارد:
تعیین مقدار میزان کارایی یک الگوریتم در حل مسئله با تحلیل الگوریتم انجام می‌شود.
زمانی که یک الگوریتم انجام می‌شود با تعداد ورودی‌های الگوریتم افزایش می‌یابد.
تحلیل پیچیدگی زمانی یک الگوریتم، تعیین تعداد دفعاتی است که عمل اصلی به ازای هر مقدار از ورودی انجام می‌شود.
T(n) را پیچیدگی زمانی الگوریتم در حالت معمول می‌گویند.
W(n) را تحلیل پیچیدگی زمانی در بدترین حالت می‌نامند.
A(n) را پیچیدگی زمانی در حالت میانگین می‌گویند.
عمل اصلی:زمان نوشتن الگوریتم اندازهٔ داده‌ها را معین سپس "چند دستور" را معلوم می‌کنیم که تعداد دفعاتی که این دستورات اجرا می‌شود کل کار الگوریتم را نشان می‌دهد.
تحلیل پیچیدگی زمانی برای حالت معمول برای الگوریتم (جمع کردن عناصر آرایه)
عمل اصلی: افزودن یک عنصر از آرایه به sum.
اندازه ورودی: n، تعداد عناصر آرایه.
عمل اصلی همیشه n بار انجام می‌شود یعنی برابر است با T(n) = n
تحلیل پیچیدگی زمانی برای حالت معمول برای الگوریتم (مرتب‌سازی تعویضی)
عمل اصلی: مقایسه S [j] با S[i].
اندازه ورودی: تعداد عناصری که باید مرتب شوند.
تحلیل پیچیدگی زمانی در بدترین حالت برای الگوریتم (جستجوی ترتیبی)
عمل اصلی: مقایسه یک عنصر آرایه با x.
اندازه ورودی: n، تعداد عناصر موجود در آرایه.
تحلیل پیچیدگی زمانی در بهترین حالت برای الگوریتم (جستجوی ترتیبی)
اندازه ورودی: n ، تعداد عناصر آرایه.
توضیح: در اولین بار عنصر مورد نظر پیدا شود.
الگوریتم‌هایی با پیچیدگی زمانی از قبیل n و 100n را الگوریتم‌های زمانی خطی می‌گویند.
مجموعه کامل توابع پیچیدگی را که با توابع درجه دوم محض قابل دسته‌بندی باشند، n²) (θ می‌گویند.
برای یک تابع پیچیدگی مفروض ƒ(n),O (ƒ (n) "O بزرگ» مجموعه‌ای از توابع پیچیدگی g (n) است که برای آن‌ها یک ثابت حقیقی مثبت c و یک عدد صحیح غیر منفی N وجود دارد به قسمی که به ازای همهٔ N =<n داریم:
g (n)>= c × ƒ (n)
برای یک تابع پیچیدگی مفروض ƒ(n)، (Ω (ƒ(n)مجموعه‌ای از توابع پیچیدگی g (n) است که برای آن‌ها یک عدد ثابت حقیقی مثبت c و یک عدد صحیح غیر منفی N وجود دارد به قسمی که به ازای همهٔ N =<n داریم:
g (n) =<c × ƒ (n)
برای یک تابع پیچیدگی مفروض ƒ(n)، داریم: θ (ƒ(n)) = O (ƒ(n)) ∩ Ω (ƒ(n))
یعنی θ(ƒ(n)) مجموعه‌ای از توابع پیچیدگی g (n) است که برای آن‌ها ثابت‌های حقیقی مثبت c وd و عدد صحیح غیر منفی N وجود دارد به قسمی که:
c × ƒ (n) <= d × ƒ(n)
برای یک تابع پیچیدگی ƒ(n) مفروض، (o(ƒ(n) ”o کوچک” عبارت ازمجموعه کلیه توابع پیچیدگیg (n) است که این شرط را برآورده می‌سازند: به ازای هرثابت حقیقی مثبت c، یک عدد صحیح غیر منفی N وجود دارد به قسمتی که به ازای همهٔ N =<n داریم:
روش تقسیم و حل
روش تقسیم و حل یک روش بالا به پایین است.
حل یک نمونه سطح بالای مسئله با رفتن به جزء و بدست آوردن حل نمونه‌های کوچکتر حاصل می‌شود.
۱- راهی برای به دست آوردن حل یک نمونه از روی حل یک نمونه از روی حل یک یا چند نمونه کوچک‌تر طراحی کنیم.
۲- شرط (شرایط) نهایی نزدیک شدن به نمونه (های) کوچک‌تر را تعیین کنیم.
۳- حل را در حالت شرط (شرایط) نهایی تعیین کنیم.
انواع روش‌های مرتب‌سازی:
ادغام یک فرایند مرتبط با مرتب‌سازی است.
ادغام دوطرفه به معنای ترکیب دو آرایه مرتب شده در یک آرایهٔ مرتب است.مرتب‌سازی ادغامی شامل مراحل زیر می‌شود:
۱- تقسیم آرایه به دو زیر آرایه، هر یک با n/2 عنصر.
۲- حل هر زیر آرایه با مرتب‌سازی آن.
۳- ترکیب حل‌های زیر آرایه‌ها از طریق ادغام آن‌ها در یک آرایه مرتب.
راهبرد طراحی تقسیم و حل شامل مراحل زیر است:
۱- تقسیم نمونه‌ای از یک مسئله به یک یا چند نمونه کوچکتر.
۲- حل هر نمونه کوچکتر. اگر نمونه‌های کوچک تربه قدر کافی کوچک نبودند، برای این منظور از بازگشت استفاده کنید.
۳- در صورت نیاز، حل نمونه‌های کوچک‌تر را ترکیب کنید تا حل نمونه اولیه به دست آید.
در مرتب‌سازی سریع، ترتیب آن‌ها از چگونگی افراز آرایه‌ها ناشی می‌شود.
همه عناصر کوچک‌تر از عنصر محوری در طرف چپ آن و همه عناصر بزرگ‌تر، در طرف راست آن واقع هستند.
مرتب‌سازی سریع، به‌طور بازگشتی فراخوانی می‌شود تا هر یک از دو آرایه را مرتب کند، آن‌ها نیز افراز می‌شوند و این روال ادامه می‌یابد تا به آرایه‌ای با یک عنصر برسیم. چنین آرایه‌ای ذاتاً مرتب است.منابع: طراحی الگوریتم
تألیف: ریچارد نیپولیتان - کیومرث نعیمی پور
ترجمه: مهندس عین‌الله جعفرنژاد قمی
ثانیهٔ کبیسه (انگلیسی: Leap second) مقدار زمان یک ثانیه است که به زمان UTC ساعت هماهنگ جهانی اضافه می‌شود تا تاریخ روز آن با زمان خورشیدی متوسط هماهنگ شود. آخرین اقدام اضافه کردن ثانیه کبیسه در تاریخ ۳۰ ژوئن ۲۰۱۵ روی داده‌است.
استاندارد ساعت هماهنگ جهانی (UTC) مقیاس ثانیه را از دستگاه بین‌المللی یکاها(SI) استفاده می‌کند و سنجش آن از روی ساعت اتمی است. این استاندارد برای سنجش زمان، مورد استفادهٔ بسیاری از کشورهاست. با توجه به اینکه متوسط زمان یک روز خورشیدی کمی بیشتر از ۲۴ ساعت (یا ۸۶۴۰۰ ثانیه) است، بنابراین، اگر یک روز UTC را دقیقاً ۸۶۴۰۰ ثانیه در نظر بگیریم، اختلاف زمان جزئی با یک روز استانداردهای زمان خورشیدی (مثل ساعت گرینویچ) پیدا خواهد کرد. موضوع ثانیهٔ کبیسه اصلاح این تفاوت به‌صورت تنظیم آن به ۸۶۴۰۱ یا ۸۶۳۹۹ ثانیه است.
مخصوصاً، یک ثانیهٔ کبیسه‌ای مثبت بین ثانیهٔ ۲۳:۵۹:۵۹ از یک روز انتخاب شده توسط UTC (که عموماً آخرین روز یک ماه انتخاب می‌شود. معمولاً ۳۰ ژوئن یا ۳۱ دسامبر) و ثانیهٔ ۰۰:۰۰:۰۰ از روز بعد در نظر گرفته می‌شود؛ که این ثانیهٔ اضافه به صورت ۲۳:۵۹:۶۰ در ساعت‌های UTC نشان داده می‌شوند. البته در ساعت‌های محلی وابسته به UTC، این ثانیه می‌تواند در ادامه یه یک ساعت دیگر یا حتی نیم ساعت یا یک ربع ساعت دیگری در نظر گرفته شود، با توجه به این ساعت محلی.
ثانیهٔ کبیسه‌ای منفی، ثانیهٔ ۲۳:۵۹:۵۹ را از یک تاریخ مشخص، حذف می‌کند. به‌طوری‌که آخرین ثانیهٔ روز ۲۳:۵۹:۵۸ می‌شود و ثانیهٔ بعدیِ آن ۰۰:۰۰:۰۰ از روز بعد خواهد بود. اگرچه، UTC از زمان تأسیس خود هیچگاه به ثانیهٔ کبیسه‌ای منفی نیاز پیدا نکرده‌است.
هرچند کلاودیوس بطلمیوس حدود ۱۴۰ سال قبل از میلاد یک روز خورشیدی را به ۶ قسمت مساوی برای نگهداری زمان تقسیم کرده‌بود، ولی این ابوریحان بیرونی بود که در سال ۱۰۰۰ میلادی، یک روز را به ۲۴ قسمت و هر قسمت را به ۶۰ واحد تقسیم کرد. در سال ۱۸۷۴ بود که مقیاس ثانیه (در دستگاه CGS) به‌صورت رسمی به‌عنوان پایهٔ واحد زمان منظور گردید. Used for mean new moons, both in گاه‌شماری عبری cycles and in equivalent astronomical cycles.
کمی پس از این مساًله وقتی دانشمندان به این نتیجه رسیدند که زمان چرخش زمین متفاوت است، اتحادیه بین‌المللی اخترشناسی IAU در سال ۱۹۵۲ ثانیه را به‌عنوان واحد در سال نجومی در نظر گرفت اما از آنجائیکه سال خورشیدی در محاسبات اساسی تر از سال نجومی قلمداد می‌شود، در سال ۱۹۵۵ IAU ثانیه را به مقدار برای سال ۱۹۰۰ تعیین نمود. بالاخره با توجه به ناکافی بودن این تعریف‌ها، در تاریخ ۱۹۶۷ مجدداً مقدار آن را معادل ۹۱۹۲۶۳۱۷۷۰ دور تشعشع حاصل از اتم سزیوم تعیین کردند.
در چند قرن گذشته متوسط زمان یک روز خورشیدی در حدود ۱٫۷ ثانیه در هر قرن اضافه شده‌است، به‌طوری‌که در سال ۱۹۶۱ روز خورشیدی به مقدار دو هزارم ثانیه بیشتر از ۸۶۴۰۰ ثانیهٔ SI شده‌است و در نتیجه استاندارد بین‌المللی زمان اتمی از ساعت متعارف رسمی گرینویچ جلو افتاده‌است.
در سال ۱۹۷۲ سیستم ثانیهٔ کبیسه ابداع شد، این تطبیق باعث می‌شد که ثانیهٔ UTC با ثانیهٔ زمان استاندارد SI برابر شود. از طرفی چون زمان استاندارد بین‌المللی GMT با زمان ساعت اتمی همزمانی شده بود در نتیجه زمان UTC به مقدار ۱۰ ثانیه از ساعت اتمی عقب می‌افتاد.
مسئولیت تنظیم ثانیهٔ کبیسه در ابتدا برعهدهٔ دفتر بین‌المللی زمان بود، ولی در سال ۱۹۸۸ به IERS واگذار شد. هرگاه تفاوت زمان UTC بازمان استاندارد جهانی GMT به بیش از شش‌دهم ثانیه برسد تصمیم به اضافه کردن ثانیهٔ کبیسه می‌کند.
سرویس IERS هر ۶ ماه اطلاعیهٔ مربوط یه تغییرات و افزودن ثانیهٔ کبیسه را در بولتن خود منتشر می‌کند، اما تصمیم گرفته‌است که این ثانیه را در ۳۰ ژوئن یا ۳۱ دسامبر اضافه کند.
معاملهٔ پایاپای یا دادوستد پایاپای یا تَهاتُر یا پایاپای یک نوع روش معامله است که در آن کالاها یا خدمات به صورت مستقیم و بدون هیچ واسطه‌ای با کالا یا خدمات دیگر مبادله می‌شود و از هیچ نوع وسیله‌ای برای مبادله استفاده نمی‌شود. به عنوان مثال هیچ نوع پولی دریافت نمی‌شود.
این نوع مبادله یک حالت دوجانبه دارد البته احتمال سه‌جانبه بودن و چندجانبه بودن نیز وجود دارد. و در کشورهای پیشرفته به صورت همسان و متشابه در کنار نظام پولی آن کشور قرار می‌گیرد. البته معمولاً این حالت وجود دارد و کاربرد آن به صورت محدود می‌باشد.
مبادله کالا به کالا معمولاً در بحرانهای مالی و بحرانهای پولی به جای پول مورد استفاده قرار می‌گیرد. به عنوان روش دادوستد جایگزین پول می‌شود.
برای نمونه زمانی که پول رایج کشور به صورت غیر پایدار می‌شود (در حالت تورم و چرخه فروکشی قیمت‌ها) یا در زمانی که پول رایج کشور به صورت ساده غیرقابل دسترسی برای هدایت و انجام تجارت می‌باشد.
1)‌ در مبادله پاياپاي طرفين معامله هم توليد كننده وهم مصرف كننده بودند
2) درمبادله پاياپاي انبار كردن توليدات براي مدت طولاني بعلت فسادپذيري كالاها و نياز توليد كننده به توليدات ديگران امكان نداشت .
3)‌ توليد از مصرف جدا نبود و مبادله بدون توليد وجود نداشت . لذا مبادله ثروت آفرين نبود بلكه اين توليد بود كه خالق ثروت بحساب مي آمد .
4) رابطه خدمات و توليد ،نظير رابطه توليدات با يكديگر بطريق مستقيم و پاياپاي صورت مي پذيرفت .
1)    نياز متقابل موجب مي شود ارائه كننده يك كالا بايستي فردي را بيابد كه اولاً به كالاي او نياز داشته باشد و ثانياً كالاي مورد احتياج او را نيز عرضه كند كه بروز اين وضعيت بسيار دشوار است .
2)  تعدد مبادلات غير لازم موجب مي گرديد جهت رسيدن به كالاي مورد نظر اقدام به مبادلات متعدد نمايد .
3)  حمل و نقل كالاها بدليل پيشرفته نبودن وسائط به دشواري صورت مي گرفت لذا مبادلات از حيث جغرافيايي در سطح محدودي باقي مي ماند .
4)  غير قابل تقسيم بودن برخي كالاها : مثلاً اگر يك رأس گاو معادل صد كيلوگرم برنج ارزش داشته باشد ، حال اگر شخصي به 50 كيلوگرم برنج نياز داشته باشد نصف كردن گاو دشوار خواهد بود .
5)  دشواري مبادله برخي خدمات نيز يكي ديگر از مشكلات بود بطوريكه مثلاً يك معلم بدشواري مي توانست خدمت خود را با كالاهاي مورد نياز خود مبادله نمايد .
6)   فسادپذيري برخي كالاها ي مورد نياز ، مانند گندم ، برنج  و احشام  را به طولاني مدت  نمي توان ذخيره كرد.
7)  محدوديت در تقسيم كار و تخصيص كار . در اين زمان هر كس مجبور بود تمام كالاهاي مصرفي خود را توليد كند. در نتيجه هيچ كس نمي توانست در زمينه توليد كالاي خاصي متخصص شود و بتواند توليد خود را افزايش دهد.
8)   محدوديت توليد و بازار. بازار به مكاني گفته مي شد كه هركسي كه كالايي داشت به آنجا مراجعه مي كرد. كالاي خود را ارائه و سپس مايحتارج خود را دريافت مي كرد.
9)  محدوديت در مبادله نسيه. در اين بازار مبادله نسيه ديگر موضوعيت نداشت.
مشكلات مبادله مبادلات پاياپاي موجب گرديد بشر بفكر ايجاد وسيله اي براي تسهيل داد و ستد بيفتد. ابتدا كالاهايي بعنوان پول انتخاب شد و سپس از سكه طلا و نقره بعنوان پول استفاده شد. با پيشرفت علوم و فنون پول كاغذي جانشين سكه طلا و نقره شد. امروزه با گسترش علوم رايانه، پول بصورت الكترونيكي جايگزين انواع مختلف پول شده است.
برخلاف باور و اذهان عمومی، هیچ نوع مدرک مبنی بر وجود یک جامعه یا اقتصاد که به صورت انحصاری و عمده‌ای و ابتدایی متکی بر دادوستد پایاپای نمی‌باشد. در عوض، کشورهایی که اقتصاد غیرپولی دارند به صورت اساسی بر پایه اصول قرض و وام و هدایای اقتصادی عمل می‌کنند.
زمانیکه معامله کالا به کالا در حقیقت اتفاق افتاد، زمانی بود که این مبادلات بین غریبه‌ها انجام می‌شد یا حتی بین دشمنان انجام می‌شد.
در زمانی که معاملات کالا به کالا یک نفره انجام می‌شد و حالت کاملاً غیررسمی داشت، معاملات سازمان یافته نیز شروع به رشد نمود و سومین بخش مبادلات کالا به کالا هدایت یافت. فرد مبادله‌کننده کالا به عنوان یک دلال عمل می‌کند و به بانکی که در آن اعضا دارای یک حساب می‌باشد یک وام ارائه می‌کند در زمانیکه خریدها انجام می‌شود و زمانیکه فروش انجام می‌شود اعتبار تهیه می‌کنند، در مقایسه با مبادلات یک نفره ملاحظات بسته به مبادلات غیرمساوی کاهش می‌یابد.
این نوع مبادلات در برزیل رواج داشته‌است البته در آن زمان هندوها هیچ اطلاعی از این مبادلات نداشتند.
دادوستد پایاپای برای کشورها و شرکتهایی که سودی در مبادلات نقدی نمی‌بینند بسیار مفید و سودآور می‌باشد.
این نوع مبادلات برای کسانی که دارای سیستم رایج پولی نمی‌باشند نیز مفید می‌باشد. این نوع مبادلات به عنوان مثال در تایلند انجام شد فردی به نام kut chum یک سری اوراقی چاپ نمود به عنوان سیستم مبادله مورد استفاده قرار گرفت. براساس قوانین جامعه کوپنهای کالا به کالا به نام Boon (بون) تغییر یافت. این کوپنها یک ارزش ثابت برای تایلندی‌ها داشت که به وسیله آن کالاها و سرویسها را در کشور خود معاوضه می‌کردند.
مبادله‌کننده‌های تجاری یک ارگان اقتصادی می‌باشند که برای مشتری‌ها و اعضای خودشان یک سری سیستم‌های نگهدارنده و برنامه‌های تجاری دارا می‌باشند.
اعضای این شرکت‌ها در درون خود سیستم یک سری فراورده‌ها را خریداری و فروش می‌کنند. و از یک سیستم پولی داخلی به عنوان دادوستد پایاپای یا دلارهای معامله استفاده می‌کنند.
پایاپای‌گرهای جدید به صورت چشمگیری رشد یافته‌اند و به صورت یک روش مؤثر برای افزایش خرید و حفظ نقدینگی مورد استفاده قرار می‌گیرند و از ظرفیتهای تولید برای تجارت در سراسر دنیا مورد استفاده قرار می‌گیرند. معامله کننده‌ها در یک دادوستد پایاپای یک سری اعتبارات تجاری (به جای پول) به دست می‌آورند که به حسابشان واریز می‌شود.
آنها می‌توانند با استفاده از این اعتبارات یک سری کالا و خدمات از اعضا دیگر این سیستم خریداری کنند. به دلیل وجود ثبت مبادلات و مهارت‌های دلالی و بیان‌ها و اعلانات ماهانه این مبادلات بسیار مهم می‌باشد.
دادوستدهای بازرگانی با تهیه شارژ گروه چه برای خرید چه برای فروش یا هر دو و برای اعضا پول تهیه می‌کنند. نرخ مبادلات معمولاً بین ۱۵% تا ۸% کنترل می‌شود.
بیش از ۴۵۰ هزار مبادله در آمریکا در سال ۲۰۱۰ در فعالیت‌های دادوستد پایاپای شرکت داشته‌اند. حدود ۴۰۰ شرکت پایاپای و اقتصادی در سراسر دنیا ارائه‌کننده خدمات می‌باشند. فرصت‌های زیادی برای ایجاد شرکت‌های پایاپای در آمریکا و کانادا وجود دارد. یکسری شرکت‌های تجاری I RTA در آمریکا ارائه‌کننده آموزش و ارتقاء استانداردهای محلی در بین اعضا می‌باشند. هر کدام دارای وجه رایج خود می‌باشند به عنوان UC شناخته می‌شود.
نخستین نظام دادوستد در سوئیس ایجاد شد و به عنوان بانک WIR نامیده شد. این سیستم در سال ۱۹۳۴ در نتیجه فقدان و کمبود پول و بعد از سقوط بازار در سال ۱۹۲۹ ایجاد شد.
توجه WIR مخفف یک کلمه در سوئیس و آلمان می‌باشد.
این نوع شرکت بر روی مبادلات وسیع‌تر و عظیم تر تمرکز پیدا کرده‌است. که کاملاً از دادوستدهای پایاپای که شامل خرده‌فروشی سنتی و قدیمی بود متفاوت می‌باشد شرکت پایاپای از رسانه‌ها و تبلیغات به عنوان یک اهرم برای مبادلات خود استفاده می‌کند. آن‌ها از یک اعتبار تجاری به عنوان نقدیندگی استفاده می‌کنند. این نوع اعتبار باید شناخته شده و تضمین شده باشد و همچنین باید دارای یک ارزش در مقدار نیز باشد که قابل خرید برای مشتری باشد.
در اسپانیا این نوع بازارهای کالا به کالا وجود دارد مردم اجناسی را که مورد نیازشان نیست برای معاوضه و مبادله به بازار می‌آورند. این نوع بازارها بدون پول عمل می‌کنند. معاوضه در بین سه بخش برای افراد رضایت بخش نیز می‌باشد.
حجم مبادلات انجام شده در سال ۲۰۰۸ بالغ بر ۱۰ میلیون دلار بوده‌است. طبق آمار بین‌المللی IRTA.
اشارات و معانی محیطی: این نوع کالا به کالا کردن تکمیل‌کننده حرکت محیطی می‌باشد که یک کشش در آخر قرن ۲۰ و اوایل قرن ۲۱ را در بر می‌گرفت.
(هزینه) برآمد منابع شامل شده در تولید و پخش فراورده‌های جدید به صورت همراه وار به وسیلهٔ محصولات موجود تجاری کاهش می‌یابد. یک بازار جهانی برای کاهش تلفات و اعمال به عنوان خنثی‌کننده اقتصاد قابل عرضه وجود دارد.
در آمریکا فردی به نام «کارل» از مبادلات کالا به کالا برای IRS و برای گرفتن حقوق ماهانه و به عنوان یک نوع مقاومت مالیاتی استفاده کرد. او در روزنامه نیویورک تایمز این روش را توضیح داد. مبادلات کالا به کالا به عنوان یک درآمد مالیات به وسیله IRS شناخته شد. در کشورهای دیگر این نوع محاسبات برای مبادلات کالا به کالا، مالیات زا نبود، بلکه این روند برای محاسبات نقدی محاسبه می‌شد.
برای اینکه یک اتفاق دو جانبه برای تقاضاها انجام شود یعنی برای ایجاد یک مبادله، هر دو طرف باید آنچه طرف مقابل می‌خواهد را داشته باشد. عدم وجود یک معیار برای محاسبه ارزش: در سیستم نقدی پول به عنوان یک معیار وجود دارد ولی در سیستم غیرنقدی وجود ندارد.
عدم تفکیک پذیری بعضی از کالاها: اگر فرد به اندازه یک قسمت از کالا نیاز داشته باشد ولی کاملاً تفکیک‌پذیر نباشد معامله صورت نمی‌گیرد. عدم وجود استانداردها برای باز پرداختها: شکل دیگر عدم وجود یک معیار مرسوم و معمول برای مبادلات می‌باشد.
مشکلات در ذخیره و انبارسازی منابع و ثروتها:
اگر یک کشور تنها متکی بر یک سری منابع فنا شدنی باشد این نوع اتکا یک مشکل دیگر ایجاد می‌کند.
امیر آجرلو ریاضی‌دان اهل ایران است.
او در سال‌های ۱۹۹۸ و ۱۹۹۹ موفق به کسب مدال طلای المپیاد جهانی ریاضی شده‌است. وی در سال اول حضور خود در این مسابقات ۳۴ و در سال دوم ۳۳ امتیاز از ۴۲ امتیاز ممکن را کسب کرد.
آجرلو هم‌چنین نویسندهٔ کتاب‌های ریاضی و المپیاد است.
قطاع دایره یا قطاع بخشی از یک قرص یا دایره‌است که به دو شعاع و یک کمان محدود شده‌است. θ زاویهٔ مرکزی روبروی کمان، formula_1 شعاع دایره و formula_2 طول کمان است.
یک قطاع با زاویهٔ ۱۸۰ درجه را نیم‌دایره و با زاویهٔ ۹۰ درجه را ربع دایره می‌نامند. اگر دو انتهای کمان را به هر نقطه‌ای غیر از مرکز دایره وصل کنیم، بخش پدید آمده قطاع نخواهد بود؛ و زاویهٔ ساخته شده در آن هم زاویهٔ مرکزی نخواهد بود.
مساحت سراسر دایره برابر formula_3 است پس مساحت یک قطاع برابر است با حاصل ضرب نسبت زاویه‌ای که دربر دارد به زاویهٔ کل دایره (۳۶۰ درجه) در مساحت کل دایره. اگر زاویهٔ θ به رادیان باشد، مساحت قطاع خواهد بود:
و اگر θ به درجه باشد:
روش دیگر آن است که مساحت این قطاع را از راه انتگرال زیر بدست آوریم:
پیرامون یک قطاع برابر است با مجموع طول کمان آن و دو شعاع دایره:
که در اینجا θ به رادیان است.
زمین‌شیمی"زمین‌شیمی" از واژه‌های مصوب فرهنگستان زبان و ادب فارسی به جای "geochemistry" در انگلیسی و در حوزهٔ علوم زمین است. یا ژئوشیمی از دو واژهٔ "Geo" به معنی زمین و "chemistry" به معنی شیمی تشکیل شده‌است.
در ساده‌ترین شکل ژئوشیمی را می‌توان به عنوان علمی تعریف کرد که با شیمی کل زمین و اجزای تشکیل دهنده آن سرو کار دارد. علم ژئوشیمی به تعبیری هم محدودتر و هم گسترده‌تر از زمین‌شناسی می‌باشد. این علم با توزیع و مهاجرت عناصر شیمیایی در درون زمین و در ابعاد زمان و مکان سرو کار دارد. علم رخداد و توزیع عناصر در جهان، به‌طور کلی شیمی کیهانی نامیده می‌شود. جهت درک درست شیمی زمین حائز اهمیت است که تا حد امکان از شیمی و تاریخ خورشید و سایر اجسام سیاره‌ای منظومه شمسی و همچنین شیمی ستارگان و فضای بین سیاره‌ای و میان ستاره‌ای مطلع باشیم. به‌طور کلی وظایف اصلی ژئوشیمی را می‌توان به صورت زیر خلاصه کرد:
تعیین فراوانی نسبی و مطلق عناصر و انواع اتم‌ها (ایزوتوپها) در زمین.
مطالعه توزیع و مهاجرت هر یک از عناصر در بخش‌های مختلف زمین (اتمسفر، هیدروسفر، پوسته و غیره) و همچنین در کانی‌ها و سنگ‌ها به منظور کشف اصول اداره‌کننده این توزیع و مهاجرت.
علم ژئوشیمی عمدتاً در طی قرن اخیر توسعه یافته‌است. با این وجود، مفهوم نظامی مستقل که با شیمی زمین سر و کار داشته باشد، مفهومی کهن است و واژه ژئوشیمی نیز برای اولین بار توسط شیمیدان سوئیسی به نام شون بین (کاشف اوزون)، در سال ۱۸۳۸ معرفی گردید.
مفهوم جدید یک عنصر را می‌توان به زمان لاووازیه و کتاب معروف وی در مورد عناصر شیمیایی (۱۷۸۹) نسبت داد.
در سال ۱۸۶۰ بنزن و کیرشف) چگونگی کاربرد طیف‌سنج در تشخیص و شناسایی عناصر را به نمایش گذاشتند، پس از آن عناصر Cs, Rb و Tl به سرعت و پی در پی به وسیله این دستگاه جدید کشف شدند. با بر پا شدن سازمان زمین‌شناسی آمریکا در سال ۱۸۸۴ و انتخاب کلارک به عنوان شیمیدان اصلی، سازمانی مرکزی برای تحقیقات شیمیایی زمین، در قاره آمریکا بنا نهاده شد.
تأسیس آزمایشگاه ژئوفیزیکی به وسیلهٔ مؤسسه کارنگی واشینگتن در ۱۹۰۴، موجب پیدایش پیشرفت‌های بزرگی در ژئوشیمی گردید. گلدشمیت که در سال ۱۹۱۱ از دانشگاه آسلو، فارغ‌التحصیل گردید، رساله دکترای وی کمکی اساسی به ژئوشیمی بود.
سال ۱۹۱۲، از بسیاری جهات می‌تواند تاریخی حیاتی برای توسعه و پیشرفت علم ژئوشیمی به حساب آید. در این سال فون‌لو نشان داد که ترتیب قرار گرفتن منظم اتم‌ها در بلورها می‌تواند به صورت شبکه انکساری در مقابل اشعه‌های ایکس عمل کند و بنابراین به اکتشافی دست یافت که می‌توانست ساختار اتمی اجسام جامد را تعیین کند.
یک مرکز مهم ژئوشیمی نیز در سال ۱۹۱۷ در اتحاد جماهیر شوروی تأسیس شد. بزرگان نامی این مرکز را ورنادسکی و همکاران جوان‌تر وی، فرسمن و وینوگرادف تشکیل می‌دادند. بازدهی علمی این مرکز بسیار زیاد بوده‌است. ژئوشیمی در اتحاد جماهیر شوروی بخصوص در راستای جستجو و استخراج مواد معدنی خام قرار داشته، و ظاهراً موفقیت قابل ملاحظه‌ای در این زمینه کسب کرده‌است.
در اختیار داشتن نمونه‌های کره ماه، داده‌های کاوش از راه دور اتمسفرها و سطوح سیارات و پذیرش مفهوم تکتونیک صفحه‌ای در سال‌های ۱۹۶۰ و ۱۹۷۰، دیدگاهی نوین برای نمونه برداری و نظریه ژئوشیمی فراهم آورد. افزوده شدن داده‌های گسترده‌ای از ماه و داده‌های زمین و شخانه‌ها، این امکان را به وجود آورد که بسیاری از نظریه‌های ارائه شده در مورد سیاره شناسی و شیمی کیهانی آزمایش شوند.
ساختار منطقه‌ای زمین
اتمسفر
اگر چه اتمسفر فقط جزء کوچکی از کل جرم زمین را تشکیل می‌دهد، اما تأثیر آن روی شیمی سطح زمین قابل ملاحظه است. اتمسفر به عنوان محیط انتقال همنه‌های بسیاری از واکنش‌های ژئوشیمیایی سطح زمین عمل می‌کند، مانند انتقال اکسیژن، دی‌اکسید کربن و آب؛ که در فرایندهای هوازدگی شیمیایی اجزای اصلی را تشکیل می‌دهند.
ترکیبات اتمسفر: ترکیب ساده بوده و تقریباً تماما از سه عنصر نیتروژن، اکسیژن و آرگون تشکیل شده‌است؛ و گازهای دیگری هم که به مقدار بسیار کم اتمسفر وجود دارند شامل دی‌اکسید کربن، نئون، هلیوم، کریپتون، گزنون، هیدروژن و اکسید نیتروژن می‌باشند. این دسته اجزای اتمسفر در نمونه‌ای مختلف هوا نسبتاً ثابت بوده و در جاهای مختلف یا زمان‌های مختلف تفاوتی نمی‌کند؛ ولی بعضی از اجزای سازندهٔ اتمسفر مقدارشان متغیر است و شامل گازهای می‌باشند.
قشری ناپیوسته از آب شیرین، شور و جامد در سطح زمین است. هیدروسفر از اقیانوس‌ها همراه با دریاها و خلیج‌های پیوسته به آنها، دریاچه‌ها، آب رودها و رودخانه‌ها، آب‌های زیرزمینی و برف و یخ تشکیل شده‌است.
بیوسفر
واژه بیوسفر برای اولین بار توسط لامارک به کار برده شد. این واژه کاربردی دوگانه دارد؛ یکی برای مشخص کردن آن بخش از زمین که توانایی حفظ حیات را دارا می‌باشد و دیگری برای نشان دادن مقدار کل ماده زنده موجود شامل گیاهان، جانوران و موجودات ذره‌بینی.