सिम्पसन सूचकांक डुप्लिकेट के साथ आइटम का संग्रह की विविधता का एक उपाय है। यादृच्छिक रूप से एक समान रूप से प्रतिस्थापन किए बिना दो अलग-अलग वस्तुओं को खींचने की संभावना है।
साथ nके समूह में आइटम n_1, ..., n_kसमान आइटम का, दो अलग अलग मदों की संभावना है

उदाहरण के लिए, यदि आपके पास 3 सेब, 2 केले और 1 गाजर है, तो विविधता सूचकांक है
D = 1 - (6 + 2 + 0)/30 = 0.7333
वैकल्पिक रूप से, विभिन्न मदों की अनियंत्रित जोड़ियों की संख्या 3*2 + 3*1 + 2*1 = 11कुल मिलाकर 15 जोड़ियों में से है, और 11/15 = 0.7333।
इनपुट:
पात्रों Aका एक तार Z। या, ऐसे पात्रों की एक सूची। इसकी लंबाई कम से कम 2 होगी। आप इसे छांटना नहीं मान सकते।
आउटपुट:
उस तार में वर्णों की सिम्पसन विविधता सूचकांक, यानी, संभावना है कि प्रतिस्थापन के साथ यादृच्छिक रूप से लिए गए दो वर्ण अलग-अलग हैं। यह 0 और 1 समावेशी के बीच की एक संख्या है।
जब एक नाव, प्रदर्शन में कम से कम 4 अंक outputting, जैसे सटीक आउटपुट समाप्त हालांकि 1या 1.0या 0.375ठीक हैं।
आप बिल्ट-इन का उपयोग नहीं कर सकते हैं जो विशेष रूप से विविधता सूचकांकों या एन्ट्रापी उपायों की गणना करते हैं। वास्तविक यादृच्छिक नमूना ठीक है, जब तक आपको परीक्षण मामलों पर पर्याप्त सटीकता नहीं मिल जाती है।
परीक्षण के मामलों
AAABBC 0.73333
ACBABA 0.73333
WWW 0.0
CODE 1.0
PROGRAMMING 0.94545
लीडरबोर्ड
यहां मार्टिन ब्यूटनर के सौजन्य से एक भाषा-भाषी लीडरबोर्ड मौजूद है ।
यह सुनिश्चित करने के लिए कि आपका उत्तर दिख रहा है, कृपया अपना उत्तर शीर्षक मार्कडाउन टेम्पलेट का उपयोग करके शीर्षक के साथ शुरू करें:
# Language Name, N bytes
Nआपके सबमिशन का आकार कहां है। यदि आप अपने स्कोर में सुधार करते हैं, तो आप पुराने अंकों को हेडलाइन में रख सकते हैं , उनके माध्यम से स्ट्राइक करके। उदाहरण के लिए:
# Ruby, <s>104</s> <s>101</s> 96 bytes
function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/53455/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function getAnswers(){$.ajax({url:answersUrl(page++),method:"get",dataType:"jsonp",crossDomain:true,success:function(e){answers.push.apply(answers,e.items);if(e.has_more)getAnswers();else process()}})}function shouldHaveHeading(e){var t=false;var n=e.body_markdown.split("\n");try{t|=/^#/.test(e.body_markdown);t|=["-","="].indexOf(n[1][0])>-1;t&=LANGUAGE_REG.test(e.body_markdown)}catch(r){}return t}function shouldHaveScore(e){var t=false;try{t|=SIZE_REG.test(e.body_markdown.split("\n")[0])}catch(n){}return t}function getAuthorName(e){return e.owner.display_name}function process(){answers=answers.filter(shouldHaveScore).filter(shouldHaveHeading);answers.sort(function(e,t){var n=+(e.body_markdown.split("\n")[0].match(SIZE_REG)||[Infinity])[0],r=+(t.body_markdown.split("\n")[0].match(SIZE_REG)||[Infinity])[0];return n-r});var e={};var t=1;answers.forEach(function(n){var r=n.body_markdown.split("\n")[0];var i=$("#answer-template").html();var s=r.match(NUMBER_REG)[0];var o=(r.match(SIZE_REG)||[0])[0];var u=r.match(LANGUAGE_REG)[1];var a=getAuthorName(n);i=i.replace("{{PLACE}}",t++ +".").replace("{{NAME}}",a).replace("{{LANGUAGE}}",u).replace("{{SIZE}}",o).replace("{{LINK}}",n.share_link);i=$(i);$("#answers").append(i);e[u]=e[u]||{lang:u,user:a,size:o,link:n.share_link}});var n=[];for(var r in e)if(e.hasOwnProperty(r))n.push(e[r]);n.sort(function(e,t){if(e.lang>t.lang)return 1;if(e.lang<t.lang)return-1;return 0});for(var i=0;i<n.length;++i){var s=$("#language-template").html();var r=n[i];s=s.replace("{{LANGUAGE}}",r.lang).replace("{{NAME}}",r.user).replace("{{SIZE}}",r.size).replace("{{LINK}}",r.link);s=$(s);$("#languages").append(s)}}var QUESTION_ID=45497;var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";var answers=[],page=1;getAnswers();var SIZE_REG=/\d+(?=[^\d&]*(?:<(?:s>[^&]*<\/s>|[^&]+>)[^\d&]*)*$)/;var NUMBER_REG=/\d+/;var LANGUAGE_REG=/^#*\s*((?:[^,\s]|\s+[^-,\s])*)/
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src=https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js></script><link rel=stylesheet type=text/css href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"><div id=answer-list><h2>Leaderboard</h2><table class=answer-list><thead><tr><td></td><td>Author<td>Language<td>Size<tbody id=answers></table></div><div id=language-list><h2>Winners by Language</h2><table class=language-list><thead><tr><td>Language<td>User<td>Score<tbody id=languages></table></div><table style=display:none><tbody id=answer-template><tr><td>{{PLACE}}</td><td>{{NAME}}<td>{{LANGUAGE}}<td>{{SIZE}}<td><a href={{LINK}}>Link</a></table><table style=display:none><tbody id=language-template><tr><td>{{LANGUAGE}}<td>{{NAME}}<td>{{SIZE}}<td><a href={{LINK}}>Link</a></table>