ตัวอย่างเช่น SSSFGTDFSSDDFSSSSSSS ตัวละครที่ปรากฏมากที่สุดคือ S ซึ่งปรากฏ 12 ครั้ง
การเขียนแบบดั้งเดิม
วิเคราะห์:
1. เตรียม JSON ที่ว่างเปล่าและดูตัวละครแต่ละตัวในสตริง หากไม่มีตัวละครดังกล่าวใน JSON ให้สร้างอาร์เรย์ใหม่ใน JSON และใส่ตัวละครนี้ลงในอาร์เรย์ หากมีตัวละครนี้ใน JSON ให้เพิ่มตัวละครลงในอาร์เรย์ ในเวลานี้หลังจากลูปเสร็จสมบูรณ์มี n อาร์เรย์ใน JSON
2. ค้นหาอาร์เรย์ที่ยาวที่สุดใน JSON ในเวลานี้ความยาวคือตัวเลขและตัวละครส่วนใหญ่คือพารามิเตอร์นี้โดยใช้สำหรับ ... ใน ... ลูปและพารามิเตอร์ attr
var str = "sssfgtdfssdddfsssssss"; ฟังก์ชั่น max () {var json = {}; var num = 0; ค่า var = null; สำหรับ (var i = 0; i <str.length; i ++) {var k = str [i]; // อื่นไม่จำเป็นต้องใช้ที่นี่มิฉะนั้นจะถูกเพิ่มเฉพาะเมื่อมีตัวละครนี้อยู่ จำนวนครั้งจะลดลง} สำหรับ (var attr ใน json) {ถ้า (num <json [attr] .length) {num = json [attr] .length; value = json [attr] [0];}} การแจ้งเตือน ("ตัวละครที่ปรากฏคือ:" value+'และจำนวนครั้งคือ:'+num);};ถ้าคุณไม่ต้องการนำสิ่งต่าง ๆ ไปใส่ใน JSON ล่ะ?
วิเคราะห์:
1. เตรียม JSON ที่ว่างเปล่าและดูตัวละครแต่ละตัวในสตริง หากไม่มีอักขระดังกล่าวใน JSON ให้ตั้งจำนวนอักขระนี้เป็น 1 ถ้ามีหมายเลข ++
2. วนลูปอักขระใน JSON ตราบใดที่พวกเขามีอยู่พวกเขาจะกำหนดหมายเลขของพวกเขาให้กับตัวแปรและเปรียบเทียบจำนวนอักขระใหม่กับขนาดของตัวแปรนี้ทุกครั้ง หากมีขนาดใหญ่กว่าตัวแปรค่าของตัวแปรจะได้รับการปรับปรุง ในที่สุดค่าของตัวแปรนี้คือจำนวนอักขระมากที่สุด
ตัวละครที่พบบ่อยที่สุดคือตัวละครตัวนี้ใน JSON
var str = "sssfgtdfssdddfssssss" ฟังก์ชั่น max () {var json = {}; สำหรับ (var i = 0; i <str.length; i ++) {var k = str [i]; // k คือตัวละครทั้งหมดและสตริงสามารถดึงได้โดยวิธีการห้อยของวงเล็บเช่นอาร์เรย์ถ้า (json [k]) {json [k] ++; // เมื่อมีอักขระนี้ใน JSON จำนวนอักขระนี้คือ +1,} else {json [k] = 1; // มิฉะนั้นตั้งค่าจำนวนอักขระนี้เป็น 1}} var num = 0; var value = null; สำหรับ (var k ใน json) {// s, f, g, t, d, dif (json [k]> num) {num = json [k]; value = k;}}} การแจ้งเตือน (วิธีปกติ
วิเคราะห์:
1. แปลงสตริงเป็นอาร์เรย์สำหรับการเรียงลำดับเพื่อให้เลือกอักขระเดียวกันที่อยู่ติดกันเป็นประจำ
2. ใช้พารามิเตอร์สองตัวของวิธีการแทนที่ปกติ () เพื่อให้ตรงกับอักขระมากที่สุดและจำนวนอักขระ
var str = "SSSFGTDFSSDDFSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS // no /1, RE เป็นสตริงที่เรียงลำดับทั้งหมด ด้วย /1 มันจะถูกนำออกมาพร้อมกับเหตุการณ์ซ้ำ ๆ /1 หมายความว่าลูกคนแรกก่อนหน้านี้เป็น new_str.replace เดียวกัน (re, ฟังก์ชั่น ($ 0, $ 1) {// $ 0 หมายความว่าทั้งหมดถูกนำออกและทำซ้ำเช่น [s, s ... ], [f, f .. ], [d, d .... ] $ 1 หมายถึงตัวละครทั้งหมดนี้ทั้งหมดนี้ if (num <$ 0.Length) {num = $ 0.Length; value = $ 1}}); การแจ้งเตือน (ค่า+":"+num)}; สูงสุด (str);