zoukankan      html  css  js  c++  java
  • 有趣的一道面试题,求连续的0或者连续的1的最大次数

    给几个0和1组成的字符串,要求用程序算成连续的0或者连续的1的最大次数,例如

    0011111000100100111    最大5
    010011100001101100     最大4
    00111110001001000000111     最大6

    我写了个ORACLE函数,勉强能实现这个功能,如下:

    create or replace function FUNC_LSX_TEST(in_str varchar) return number
    as
       v_i varchar2(1) ;
       v_j varchar2(1) ;
       v_return number :=1 ;
       i number :=1 ;
       j number :=1 ;
       v_flag number :=1 ;
       type t_tbl is table of number index by binary_integer;
       t_return t_tbl ;
      
    begin
      t_return(1) :=1 ;
       while i<length(in_str)
          loop
         v_i := substr(in_str,i,1) ;
          v_j := substr(in_str,i+1,1) ;
            if(v_j is not null) then
               if(v_i = v_j) then
                  t_return(i) := v_flag +1 ;
                  v_flag := v_flag +1 ;
                  i :=i+1 ;
               else
                 v_return := 1 ;
                 v_flag := 1 ;
                 t_return(i) :=1 ;
                 i :=i+1 ;
               end if ;
            else
              i :=i+1 ;
            end if ;
          end loop;
         
         
          while j < t_return.count -1 
           loop
            if (t_return(j) > v_return) then
               v_return := t_return(j) ;
               j := j+1 ;
             end if ;
           j := j+1 ;
           end loop;

      return v_return ;
    end;

    select FUNC_LSX_TEST('00111110001001000000111') from dual ;
    6

  • 相关阅读:
    pig中将两列合并为一列:concat
    最小二乘法拟合二元多次曲线
    动态重新加载Class机制之代码测试
    從 Windows Form ComboBox、ListBox 或 CheckedListBox 控制項加入或移除項目
    C#控件一览表
    C#中combobox 和TreeView控件属性、事件、方法收集
    PHP 分页类 潇湘博客
    一个房屋中介业务建模的实例分析
    使用Limit参数优化MySQL查询 潇湘博客
    word中的字号与实际的字体大小一一对应的关系
  • 原文地址:https://www.cnblogs.com/caibird2005/p/2396030.html
Copyright © 2011-2022 走看看