òîåã 1 îúåê 2 12 àçøåïàçøåï
úåöàåú 1 òã 15 î 23

àùëåì: àìâåøéúí ñåâøééí áâ'àååäñ÷éøôè.

  1. #1
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320

    àìâåøéúí ñåâøééí áâ'àååäñ÷éøôè.

    ðáçðúé ááéú åäðáìåú òãééï ìà äçæéøå úùåáä,
    àðé ìà äëé îðåñä á JS
    ì÷ç ìé çöé ùòä ììîåã îä öøéê åìëúåá àú äàìâåøéúí, òí èòåéåú ñéðè÷ñ ÷èðåú åèòåú áäâãøú âáåìåú äìåìàä, ùúé÷ðúé éåúø îàåçø,
    áñä"ë çøâúé ôé 2 îäæîï.
    àáì éåúø îòðéï àåúé äàí éù ãøê àçøú éåúø éòéìä å÷øéàä éåúø.
    öøéê ìëúåá ôåð÷öéä äî÷áìú string åîçæéøä 1 àí äñåâøééí á÷ìè î÷åððéí ðëåï å- 0 àçøú.
    ãåâîàåú :

    You need to consider three kinds: (), [], <> and only these kinds.


    Examples:

    verify("---(++++)----") -> 1
    verify("") -> 1
    verify("before ( middle []) after ") -> 1
    verify(") (") -> 0
    verify("} {") -> 1 //no, this is not a mistake.
    verify("<( >)") -> 0
    verify("( [ <> () ] <> )") -> 1
    verify(" ( [)") -> 0
    ÷åã HTML:
    function verify(text)
    {
        var  stack =  new Array();
        var  myMap =  new Map();
        myMap.set('[' ,']');
        myMap.set('(',')');
        myMap.set( '<','>');
        myMap.set('”', '”');
        var regOpen   =  /[([<"]/ ;
        var regClose  = /[\)\]\>"]/ ;
        var length=  text.length-1;
        var textArr= text.split("");
        var pop;
        console.log(length);
        for (i=0;i<=length; i++ )
        {
           if( textArr[i].match(regOpen)  )
              stack.push(textArr[i]);
           else if( textArr[i].match(regClose)  )
           {
               pop =  myMap.get(stack.pop());
               if( pop!= textArr[i] )
                   return 0;
           }
        }
        return (stack.length==0 ? 1:0);
    }
    ðòøê ìàçøåðä òì éãé levil; 09-09-2016 áùòä 11:48.

  2. #2
    Banned
    úàøéê äöèøôåú
    May 2015
    îé÷åí
    áàï
    äåãòåú
    1,023
    ãéñ÷ìééîø :
    àéï ìé îåùâ éøå÷ áúëðåú åîä ùàðé òåîã ìëúåá ëàï äí ùèåéåú áî÷øä äèåá.

    àæ.
    ÷åãí ëì áùáéì äòååàðèä äééúé îùúîù áñéðè÷ñ ùì ES6.
    éòðå
    ÷åã PHP:
    use strict 
    // use "let" and "const" , don't use var 
    2) äùéîåù áøâ÷ñ îéåúø.
    àúä äøé îôø÷ àú äîçøåæú ìîòøê åòåáø úå úå. àæ úùúîù áôåð÷öéä indexOf
    éòðå
    ÷åã PHP:
    const regOpen '[([<' 
    if (
    regOpen.indexOf(textArr[i]) { textArr[i] => { stack.push(textArr[i])} }
    // àå ùèåú ãåîä 
    3) àúä öøéê ìäçæé÷ îåðä ùì ëì ñåâ ñåâøéí. ëùäñåâøéí ôåúçåú äåà òåìä áàçã åääôê.
    áøâò ùàçã äîåðéí éåøã îúçú ìàôñ áåí! Game Over åàúä öøéê ìòùåú áøéé÷ îäìåìàä. àéï èòí ìäîùéê áä.
    àðé ìà îöìéç ìò÷åá àçøé äôìåàå ùì ä÷åã ëãé ìãòú àí æä ÷åøä. äøöú èñèéí ëãé ìáãå÷ ùæä òåáã?

    4) äàåôøèåø äèøðøé ùìê (áñåó) àçìä. úùúîù áæä éåúø.



    òøéëä:
    3.à )
    åëîåáï ëîåáï ëîåáï ùáøâ÷ñ àúä çééá ìòùåú àñ÷ééôéðâ ìúååéí îéåçãéí ëîå ñåâøééí. (àéê ùëçúé àú æä àðé ìà éåãò)
    ðòøê ìàçøåðä òì éãé ÷ñã; 09-09-2016 áùòä 18:47. ñéáä: äòùøä

  3. #3
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320
    1) ëï àðé éåãò, öøéê ìòáåø ì- let.
    îöàúé ãøê ìáöò àú äùîú äòøëéí ìàåáéé÷è ä Map áùåøä àçú :
    ÷åã HTML:
    let myMap = new Map([  ['[', ']'], ['(',')'] , ['<','>'],['”', '”']  ]);
    àáì äñéðè÷ñ äæä òãééï ìà òåáã ìé á WEBSTORM ùì JETBRAIN àåìé öøéê ìîöåà âéøñä îòåãëðú éåúø ùì V8.
    2) àéê äùéîåù áøâ÷ñ îéåúø àí àúä îùúîù áå áãåâîà ùìê ?
    äùéîåù áøâ÷ñ îàôùø ìé ìäîðò î- SWITCH CASE àøåê åîñåøáì.
    éëåìúé ìäùúîù áîåðä ìëì ñåâ ñåâøééí, àáì àæ ä÷åã éäéä îñåøáì äøáä ôçåú ÷øéà å÷ùä ìúçæå÷ä.
    áî÷åí æä àðé îùúîù á HASH TABLE ùáòâä ùì ES6 ð÷øà Map, ëìåîø îùäå ùîçæé÷ æåâåú ùì KEY å- VALUE

    3) ä÷åã òåáã ìé ôøô÷è.

    äôìåå ùì äúåëðéú äåà :
    à) àðé éåöø àåáéé÷è ùì îàô, ä KEY äåà äñåâø éîðé åä VALUE äåà äñåâø äùîàìé,
    á) àðé òåáø áìåìàä òì äîçøåæú, úå úå,
    1)áåã÷ ò"é ùéîåù áøâ÷ñ REGOPEN äàí äúå äðåëçé äåà îñåâ ñåâø-ùîàìé àí ëï ãåçó àåúå ìîçñðéú åòåáø ìúå äáà,
    àí ìà,
    2) áåã÷ äàí äúå äåà îñåâ ñåâø- éîðé, àí ëï, àðé ùåìó îäîçñðéú àú äñåâø äùîàìé äàçøåï ùðãçó àìéä
    åò"é ÷øéàä ìîúåãú GET ùì MAP äî÷áìú ëàøâîåðè KEY åîçæéøä VALUE àðé î÷áì àú äñåâø äéîðé (ùì äñâéøä)
    äîúàéí ìñåâø äùîàìé (äôåúç) ùðùìó îäîçñðéú,
    ëòú àðé éëåì ìáãå÷ áòöí àí äñåâø äùîàìé äàçøåï áîçøåæú îúàéí ìñåâø äéîðé , àí ìà àðé éåöà îäôåð÷öéä òí àôñ,
    àí ëï, àðé îîùéê äìàä áìåìàä ëé ä POP ùäùúîùúé ìáãé÷ä ëáø äòéó ìé àú äñåâø äùîàìé äàçøåï áîçñðéú,

    â) àçøé ùéöàúé îäìåìàä àðé áåã÷ äàí äîçñðéú øé÷ä, àí ëï äñåâøééí î÷åððåú ðëåï åîçæéø 1 àçøú îçæéø 0.

    ìâáé ä÷åã: ëúáúé âéøñä ììà ùéîåù á SPLIT åäúåëðéú îöìéçä òí ëì äèñèéí ùäáàúé ÷åãí åâí àçøéí.
    ÷åã PHP:
         function verify(text){
        var  
    stack =  new Array(); 
       var  
    myMap =  new Map(); 
       
    myMap.set('[' ,']'); 
       
    myMap.set('(',')');  
      
    myMap.set'<','>');
        
    myMap.set('”''”');  
      var 
    regOpen   =  /[([<"]/ ; 
       var regClose  = /[\)\]\>"
    ]/ ; 
       var 
    length=  text.length-1;  
      var 
    pop
       for (
    i=0;i<=lengthi++ )
        {       if( 
    text.charAt(i).match(regOpen)  )   
           
    stack.pushtext.charAt(i));  
         else if(  
    text.charAt(i).match(regClose)  )   
        {           
    pop =  myMap.get(stack.pop()); 
              if( 
    pop!=  text.charAt(i) )        
           return 
    0;  
         }    }    return (
    stack.length==1:0);} 
    ðòøê ìàçøåðä òì éãé levil; 09-09-2016 áùòä 21:27.

  4. #4
    Banned
    úàøéê äöèøôåú
    May 2015
    îé÷åí
    áàï
    äåãòåú
    1,023
    öéèåè ðëúá áî÷åø òì éãé levil öôéä áäåãòä
    2) àéê äùéîåù áøâ÷ñ îéåúø àí àúä îùúîù áå áãåâîà ùìê ?
    àå ùàúä äãéåè âîåø áúçåí, àå ùàúä èøåì ùîèøéì ìäôâú ùéòîåí, àå âí åâí.
    äéåú åèîðú á÷åã ëîä áéöåú ôñçà (ìîùì îä ÷ùåø äúå " ìñåâøééí? îä æä " ñåâø åîä æä " ôåúç? åáîéåçã ùäùàìä ëúáä áîôåøù áàéìå ñåâøééí ìäúçùá.
    åìîä á regClose àúä îùúîù áàñ÷ééôéðâ ëîå ùöøéê åá regOpen ìà?) -
    ùæä ãáø äîòéã òì àéæåùäéà àéðèìéâðöéä àùø âáåää áîòè îùì àé àéìå ðîåëé îöç - àðé îäîø òì àåôöéä ùúéí.

    åáëì æàú àòðä ìê:
    indexOf æä îîù ìà øâ÷ñ. match æä îîù ëï.
    åàîðí æä ìà úëðåú øéìèééí àáì àðé îòãéó ìäùúîù áëîä ôçåú îùàáéí.

    indexOf vs match





    åáðåñó. ìà äúééçñú ìî÷øä ùäòìéúé áå îåôéò ñåâø ñåâø ìôðé ñåâø ôåúç. âí ìà áôìåàå ùìê ùúéàøú.

  5. #5
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320
    àéï ìé òðéï ìòðåú ìê.
    àúä çåöôï éåãò äëì ùìà îñåâì ìäáéï ôìåå ùì 20 åëîä ùåøåú,
    åä÷åã ùëúáú ìà òåáã.
    ðòøê ìàçøåðä òì éãé levil; 10-09-2016 áùòä 10:29.

  6. #6
    Banned
    úàøéê äöèøôåú
    May 2015
    îé÷åí
    áàï
    äåãòåú
    1,023
    ñééîú ìòøåê? ëé àí ìà àðé âí äéáøéñé ÷èèåðé. úåñéó úåñéó.
    î÷øéàä çåæøú àðé øåàä ùèéôìú áðåùà äñåâø ñåâø ìôðé ôåúç.
    òãééï ä regOpen åä regClose îàã áòééúééí åàðé ìà îáéï àéê ä÷åã ùìê òåáã ìèòðúê.
    () áøâ÷ñ ðåòãå ìúôåñ îùäå.
    [] áøâ÷ñ æä äñååéõ' ÷ééñ ùàúä îãáø òìéå - àôùøåú ùì ëîä úååéí.

    àáì ðîúéï ìùàø äúëðúéí ùôä. àðé ñééîúé

  7. #7
    Member äñîì äàéùé ùì shaig
    úàøéê äöèøôåú
    May 2015
    äåãòåú
    434
    äúëååðú ìééöø áåã÷ ú÷éðåú ùì ÷åã?
    ëé àí ëï, ùëçú ìäúééçñ ìøéîàø÷éí åìîçøåæåú.
    áëì àåôï, äëé éòéì ìøåõ úå úå åìùîåø òì ñèééè, îä ùð÷øà îëåðú îöáéí.
    àáì îä àðé îáéï, ìà ñééîúé úéëåï.

  8. #8
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320
    öéèåè ðëúá áî÷åø òì éãé shaig öôéä áäåãòä
    äúëååðú ìééöø áåã÷ ú÷éðåú ùì ÷åã?
    ëé àí ëï, ùëçú ìäúééçñ ìøéîàø÷éí åìîçøåæåú.
    áëì àåôï, äëé éòéì ìøåõ úå úå åìùîåø òì ñèééè, îä ùð÷øà îëåðú îöáéí.
    àáì îä àðé îáéï, ìà ñééîúé úéëåï.
    ìà, àéï ëååðåú ðåñôåú, äôåð÷öéä îåâãøú äéèá áôåñè äøàùåï,
    äîèøä äéà áãé÷ú ú÷éðåú ä÷éðåï ùì 3 äñåâøééí äðúåðéí áîçøåæú ä÷ìè, ìà äòøåú.
    ìà îáéï ìîä äúëååðú á"ìäúééçñ ìîçøåæú".
    ä÷åã øõ úå-úå òã ìîöéàú àé-÷éðåï àå òã ñåó äîçøåæú äîå÷ãí îáéðäí.
    ðòøê ìàçøåðä òì éãé levil; 10-09-2016 áùòä 13:06.

  9. #9
    Member äñîì äàéùé ùì shaig
    úàøéê äöèøôåú
    May 2015
    äåãòåú
    434
    àí æä ìà áåã÷ ú÷éðåú ùì ÷åã, àæ äúåëðéú áñãø, çåõ îæä ùùëçú var i

  10. #10
    Member äñîì äàéùé ùì shaig
    úàøéê äöèøôåú
    May 2015
    äåãòåú
    434
    åàí æä ø÷ ìñåâøééí, àæ îä èåá á÷åã äæä çåõ îúøâéìéí ùì îëììú úçú? åîä äèòí áùéôåø äéòéìåú îòáø ìðì?

  11. #11
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320
    æä äéä çì÷ îîáçï ÷áìä.

  12. #12
    Member äñîì äàéùé ùì shaig
    úàøéê äöèøôåú
    May 2015
    äåãòåú
    434
    ìåéì å÷ñã, îçôùéí àöìðå áðøåú, åàðé çì÷ îååòãú ä÷áìä. àúí îåæîðéí ìøàéåï.

  13. #13
    Banned
    úàøéê äöèøôåú
    May 2015
    îé÷åí
    áàï
    äåãòåú
    1,023
    öéèåè ðëúá áî÷åø òì éãé shaig öôéä áäåãòä
    ìåéì å÷ñã, îçôùéí àöìðå áðøåú, åàðé çì÷ îååòãú ä÷áìä. àúí îåæîðéí ìøàéåï.
    àðé éåúø áëéååï ùì DevOps (ùîòúí? ñúí ùúãòå) àáì ÷áì ä"ô ìçåöä.

  14. #14
    Member äñîì äàéùé ùì shaig
    úàøéê äöèøôåú
    May 2015
    äåãòåú
    434
    öéèåè ðëúá áî÷åø òì éãé ÷ñã öôéä áäåãòä
    àðé éåúø áëéååï ùì DevOps (ùîòúí? ñúí ùúãòå) àáì ÷áì ä"ô ìçåöä.
    âí äåìê

  15. #15
    Member
    úàøéê äöèøôåú
    Aug 2016
    äåãòåú
    320
    àéôä àúí ðîöàéí ?

    æå äâéøñä äð÷éä ùì äîúåãä.
    ÷åã PHP:
    function verify(text)
    {
       
    'use strict';
        
    let  stack =  new Array();
        
    let myMap = new Map([  ['['']'], ['(',')'], ['<','>'] ]);
        
    let regOpen   =  /[([<"]/ ;
        let regClose  = /[\)\]\>"
    ]/ ;
        
    let length  =  text.length-1;
        var 
    pop;
        var 
    currentChar;
        for (var 
    i=0;i<=lengthi++ )
        {
            
    currentChar text.charAt(i);
            if(  
    currentChar.match(regOpen)  )
                
    stack.push(  currentChar);
            else if(   
    currentChar.match(regClose)  )
            {
                
    pop =  myMap.get(stack.pop());
                if( 
    pop!=  currentChar )   return 0;
            }
        }
        return (
    stack.length==1:0);

    ðòøê ìàçøåðä òì éãé levil; 13-09-2016 áùòä 21:56.

äøùàåú ôøñåí

  • àéï áàôùøåúê ìôøñí àùëåìåú çãùéí
  • àéï áàôùøåúê ìôøñí úâåáåú
  • àéï áàôùøåúê ìöøó ÷áöéí
  • àéï áàôùøåúê ìòøåê àú äåãòåúéê
  •  
Single Sign On provided by vBSSO