Skip to main content

Posts

LeetCode Problem #15. 3Sum

Problem statement  Given an array   nums   of   n   integers, are there elements   a ,   b ,   c   in   nums   such that   a   +   b   +   c   = 0? Find all unique triplets in the array which gives the sum of zero. Note: The solution set must not contain duplicate triplets. Example : Given array nums = [-1, 0, 1, 2, -1, -4], A solution set is: [ [-1, 0, 1], [-1, -1, 2] ] this problem is medium but I think it is much harder especially with the condition of non duplicate,  I'll write two solutions 
Recent posts

LeetCode Problem #11 Container With Most Water

LeetCode Problem #11 Container With Most Water Given  n  non-negative integers  a 1 ,  a 2 , ...,  a n  , where each represents a point at coordinate ( i ,  a i ).  n  vertical lines are drawn such that the two endpoints of line  i  is at ( i ,  a i ) and ( i , 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water. Note:  You may not slant the container and  n  is at least 2. The above vertical lines are represented by array [1,8,6,2,5,4,8,3,7]. In this case, the max area of water (blue section) the container can contain is 49. Problem Link Solution Number One O(n^2) Brute Force : Try all valid combinations  outer loop start from i = 0 to length of array inner loop start from j = i+1 to length of array  compare current area with new area and choose max. return max area. Solution Number Two O(n) : Linear Solution greedy algorithm: calculating area it is rectangle  width = rightIndex - leftIndex height = min (height[ rightIndex]

LeetCode Problem #19 Remove Nth Node From End of List

Solution for LeetCode Problem #19 Remove Nth Node From End of List it is linked list problem can be solved with multiple solutions, but I'm gonna solve it with fastest solution in java. Problem link we should assign dummy_head it is common while solving linked list problems  Assign 2 iterators slow and fast both equals to dummy_head we don't know the length of the list but we know it is always valid, so we will move with a window of size n+1 when we reach the end by the fast iterator the slow iterator will be in the node n+1 from the last , right? we will assign slow.next to be equal slow.next.next we are dropping the node n from last, got it? we will return dummy_head.next Thank you, AhmedG

DevExpress C# Chart Tutorial

Hello , this blog post about Charting in DevExpress , I faced many problems I visited hundreds of pages to solve this problems , actually it was the first time I use DevExpress Charts, Work is not like school or university , in school if you don't know thing you can learn it any time you want , in work you have to do today task yesterday, I like to share my knowledge and skills with you , I hope this Post help you . // clear series on chart  chart.Series.Clear(); // clear Titles of chart chart.Titles.Clear(); // legend alignment  chart.Legend.AlignmentHorizontal = LegendAlignmentHorizontal.Center; chart.Legend.AlignmentVertical = LegendAlignmentVertical.Bottom; chart.Legend.Direction = LegendDirection.LeftToRight; // creating series // series view Type example Line DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series("series name ", ViewType.Line); // add title  DevExpress.XtraCharts.ChartTitle chtTitle = new DevExpress.XtraCharts.Cha

C# Witting XML Document

Hi I'm Writing application , the application require a knowledge and skills in C# dotNet framework , I'll write my experience about C# XML .   XmlDocument xmlDoc = new XmlDocument(); // create xml document Object  XmlElement xmlRoot = xmlDoc.CreateElement("RootTag"); // create root tag  XmlElement Attributes = xmlDoc.CreateElement("Attributes"); // I create another tag called it  Attributes of course you can change it.   XmlElement element; // create reference for XML element     element = xmlDoc.CreateElement("child");   element.InnerText = "Hello World from Child";   Attributes.AppendChild(element); // append XML Element to parent node              XmlElement parameters =   xmlDoc.CreateElement("parameters");   for (int i = 0; i < 10; i++) { XmlElement node = xmlDoc.CreateElement(" parameter ");   node.SetAttribute("id", "value"); // adding attribute    node.SetAttribute(&quo

Writing One Dimensional Array as Image ( Java )

Welcome back ,I'm still writing the application from the last post, I founded that I must redraw the image to show the result , I faced Many problems while writing the Method write Image first the image was totally black which is not correct , I searched the web for a solution especially stack overflow site , I'm gonna tell you what I gain , I hope the post help you in shaa Allah . public void write_image(int[] image_1d, int width, int height) throws IOException {            WritableRaster raster= Raster.createWritableRaster         (new PixelInterleavedSampleModel(0, width,height, 1,          1920,new int[] {0}), new Point(0,0));         int k =0 ;         for(int i = 0 ; i < width ; i++ )          {          for(int j = 0 ; j < height ; j++)          {              raster.setSample(i,j,0,image_1d[k]);              k++;          }          }         BufferedImage image =new BufferedImage(width,height,                                  BufferedImage.

Reading Image in 1 Dimensional Array

Hello , I'm writing an application and I need to write a method which can read an Image, I found it hard complicated in some times, I wrote a One and I'd like to share it with you note it is written with Java and it convert gray-scale images to binary 0-1 .  public int [] read_image_in_1d () throws IOException{         // array to be returned          int image_1d []= null ;         // File object to hold the destination          File f = new File("test.jpg");         // buffer for the Image          BufferedImage  image = ImageIO.read(f);         // raster to the image         Raster raster = image.getData();         // width          int width = raster.getWidth();         // height          int height = raster.getHeight();         // initialization for the Array          image_1d = new int[width * height];         int k = 0;         //get the image in the array         for(int i = 0 ; i < width ; i++)             for(int j = 0 ; j < height