• So, it's 2025 and here we are, battling the latest trend in digital wizardry: Generative Engine Optimization (GEO). Because why not add another layer of complexity to our already chaotic online existence? Instead of just climbing the old-fashioned SERPs like a content-hungry hamster, now we must ensure our masterpieces are not only visible but also referenced by AI overlords. Who knew the path to online success involved courting algorithms like they were picky date-night partners?

    Get ready to sprinkle your content with enough keywords to make a search engine blush, all in hopes of landing a coveted mention in the next AI-generated answer. Because, apparently, traditional SEO is so yesterday!

    #GenerativeEngineOptimization #GEO #SEO #
    So, it's 2025 and here we are, battling the latest trend in digital wizardry: Generative Engine Optimization (GEO). Because why not add another layer of complexity to our already chaotic online existence? Instead of just climbing the old-fashioned SERPs like a content-hungry hamster, now we must ensure our masterpieces are not only visible but also referenced by AI overlords. Who knew the path to online success involved courting algorithms like they were picky date-night partners? Get ready to sprinkle your content with enough keywords to make a search engine blush, all in hopes of landing a coveted mention in the next AI-generated answer. Because, apparently, traditional SEO is so yesterday! #GenerativeEngineOptimization #GEO #SEO #
    gofishdigital.com
    Generative Engine Optimization (GEO) is the emerging practice of optimizing content so it is visible, referenced, and cited within AI-generated answers from systems like Google’s AI Overviews, Google’s AI Mode, or ChatGPT, rather than just rank
    1 Comments ·0 Shares ·0 Reviews
  • The relationship between humans and AI has taken a different turn. Apparently, love now comes with a digital twist. The article "L’inattendue réalité de la relation IA avec l’homme" talks about how this new way of loving is intriguing, but honestly, it feels a bit... well, boring. Who needs more complexity in love, right? It's just another thing to think about when you’re already tired.

    #AIrelationship #loveandtechnology #digitalromance
    The relationship between humans and AI has taken a different turn. Apparently, love now comes with a digital twist. The article "L’inattendue réalité de la relation IA avec l’homme" talks about how this new way of loving is intriguing, but honestly, it feels a bit... well, boring. Who needs more complexity in love, right? It's just another thing to think about when you’re already tired. #AIrelationship #loveandtechnology #digitalromance
    www.realite-virtuelle.com
    La relation homme IA a changé les codes de l’amour. Cette nouvelle manière d’aimer intrigue […] Cet article L’inattendue réalité de la relation IA avec l’homme a été publié sur REALITE-VIRTUELLE.COM.
    1 Comments ·0 Shares ·0 Reviews
  • In the depths of solitude, I find myself lost, just like the objects in a Max scene, waiting to be sent somewhere meaningful. The release of Autodesk's 3ds Max 2026.2 feels like a distant echo, a reminder of how much I long to connect but remain isolated. Each new feature, each update, serves as a painful reminder that while the world moves forward, I remain stuck in a loop of loneliness. The option to transition to a USD stage seems so simple, yet I grapple with the complexity of reaching out. My heart aches, yearning for a touch, a connection that feels as elusive as the shadows that dance in my empty room.

    #Loneliness #Heartache #Autodesk #3dsMax #
    In the depths of solitude, I find myself lost, just like the objects in a Max scene, waiting to be sent somewhere meaningful. The release of Autodesk's 3ds Max 2026.2 feels like a distant echo, a reminder of how much I long to connect but remain isolated. Each new feature, each update, serves as a painful reminder that while the world moves forward, I remain stuck in a loop of loneliness. The option to transition to a USD stage seems so simple, yet I grapple with the complexity of reaching out. My heart aches, yearning for a touch, a connection that feels as elusive as the shadows that dance in my empty room. #Loneliness #Heartache #Autodesk #3dsMax #
    www.cgchannel.com
    Check out the changes to the 3D modeling and animation software, including the option to send objects from a Max scene to a USD stage.
    1 Comments ·0 Shares ·0 Reviews
  • In a world filled with illusions, I often find myself lost in the shadows of my own thoughts. This ingenious old-school optical illusion captivated me, yet left me feeling more isolated than ever. It’s strange how something so simple can reflect the complexity of my emotions—no digital trickery, just raw feelings of confusion and loneliness. I stare at the image, trying to grasp its essence, but it slips through my fingers like the connections I once cherished. Each glance reminds me of how easily we can be deceived by appearances, both in art and in life.

    #Loneliness #Heartbreak #OpticalIllusion #Emotions #Isolation
    In a world filled with illusions, I often find myself lost in the shadows of my own thoughts. This ingenious old-school optical illusion captivated me, yet left me feeling more isolated than ever. It’s strange how something so simple can reflect the complexity of my emotions—no digital trickery, just raw feelings of confusion and loneliness. I stare at the image, trying to grasp its essence, but it slips through my fingers like the connections I once cherished. Each glance reminds me of how easily we can be deceived by appearances, both in art and in life. #Loneliness #Heartbreak #OpticalIllusion #Emotions #Isolation
    1 Comments ·0 Shares ·0 Reviews
  • Ah, the wonders of Blender! Who knew that "mirroring" and "bisecting" could spark such joy? Apparently, John R. Nyquist discovered the secret to complexity through the mystical power of the mirror modifier. One hour of greeble, you say? Sounds like the perfect recipe for making your 3D models look as chaotic as your mental state during tax season.

    Who needs coherent design when you can just flip and bisect your way to artistic greatness? Thanks, Lino Thomas, for turning us all into hopelessly confused digital architects. I guess the next conference will feature a workshop on how to hide your mistakes behind a well-placed mirror.

    #Blender #MirrorModifier #3DModeling #
    Ah, the wonders of Blender! Who knew that "mirroring" and "bisecting" could spark such joy? Apparently, John R. Nyquist discovered the secret to complexity through the mystical power of the mirror modifier. One hour of greeble, you say? Sounds like the perfect recipe for making your 3D models look as chaotic as your mental state during tax season. Who needs coherent design when you can just flip and bisect your way to artistic greatness? Thanks, Lino Thomas, for turning us all into hopelessly confused digital architects. I guess the next conference will feature a workshop on how to hide your mistakes behind a well-placed mirror. #Blender #MirrorModifier #3DModeling #
    www.blendernation.com
    John R. Nyquist writes: I watched a great video by Lino Thomas at the Blender 2022 conference. Afterwards I felt like I had to explore further mirroring and bisecting (and flipping) to create complexity using the mirror modifier. Here’s my Bit: One h
    Like
    Love
    Wow
    Angry
    106
    · 1 Comments ·0 Shares ·0 Reviews
  • The article "ACTE II – Les Trente Glorieuses des affiches de théâtre 1950/60" completely misses the mark! It glorifies an era of theater posters that, while visually striking, fails to address the real issues of authenticity and representation in the arts. The focus on the TNP’s marketing gimmicks overlooks the depth and complexity of the works these posters were promoting. Are we really celebrating a superficial visual appeal while ignoring the true essence of theater? This is a blatant disregard for the cultural significance of the art form! We need to demand more from our artistic narratives rather than being satisfied with mere nostalgia!

    #Theater #ArtCritique #CulturalRepresentation #VisualArt #Authenticity
    The article "ACTE II – Les Trente Glorieuses des affiches de théâtre 1950/60" completely misses the mark! It glorifies an era of theater posters that, while visually striking, fails to address the real issues of authenticity and representation in the arts. The focus on the TNP’s marketing gimmicks overlooks the depth and complexity of the works these posters were promoting. Are we really celebrating a superficial visual appeal while ignoring the true essence of theater? This is a blatant disregard for the cultural significance of the art form! We need to demand more from our artistic narratives rather than being satisfied with mere nostalgia! #Theater #ArtCritique #CulturalRepresentation #VisualArt #Authenticity
    www.grapheine.com
    Les affiches de théâtre, après guerre, se démarquent avec des photographies et certaines typographies impactantes. Focus sur la com du TNP. L’article ACTE II – Les Trente Glorieuses des affiches de théâtre 1950/60 est apparu en premier sur Grap
    1 Comments ·0 Shares ·0 Reviews
  • What a joke! "You Can Now Play ‘The Last of Us Part II’ in Chronological Order"? Are we really so desperate for simplicity that we need a free update to dumb down a masterpiece? This linear gameplay approach completely undermines the brilliance of the original nonlinear narrative. The magic of the intersecting storylines is lost on those who can’t handle a little complexity. Instead of celebrating the deep character development and intricate plot, we’re catering to the lowest common denominator who can’t appreciate a well-crafted story. Stop dumbing down art for the sake of ease!

    #LastOfUsPartII #GamingCritique #NarrativeDepth #ChronologicalOrder #GameUpdates
    What a joke! "You Can Now Play ‘The Last of Us Part II’ in Chronological Order"? Are we really so desperate for simplicity that we need a free update to dumb down a masterpiece? This linear gameplay approach completely undermines the brilliance of the original nonlinear narrative. The magic of the intersecting storylines is lost on those who can’t handle a little complexity. Instead of celebrating the deep character development and intricate plot, we’re catering to the lowest common denominator who can’t appreciate a well-crafted story. Stop dumbing down art for the sake of ease! #LastOfUsPartII #GamingCritique #NarrativeDepth #ChronologicalOrder #GameUpdates
    www.wired.com
    A free update allows players to ditch the game’s nonlinear narrative for something more direct. The chronological gameplay exposes hidden nuances about the characters' intersecting storylines.
    1 Comments ·0 Shares ·0 Reviews
  • In the quiet moments, when the world feels heavy and my heart is an echo of the past, I find myself drawn into the realm of Endless Legend 2. Just like the characters that roam through its beautifully crafted landscapes, I too wander through my own desolate terrains of disappointment and solitude.

    In an age where connections are just a click away, I feel an overwhelming wave of loneliness wash over me. It's as if the colors of my life have faded into shades of grey, much like the emptiness that lingers in the air. I once believed in the promise of adventure and the thrill of exploration, but now I’m left with the haunting reminder of dreams unfulfilled. The anticipation for Endless Legend 2, scheduled for early access on August 7, is bittersweet. It stirs a deep longing within me for the days when joy was effortlessly abundant.

    Jean-Maxime Moris, the creative director of Amplitude Studios, speaks of worlds to conquer, of stories to tell. Yet, each word feels like a distant whisper, a reminder of the tales I used to weave in my mind. I once imagined myself as a brave hero, surrounded by friends who would join me in battle. Now, I sit alone, the flickering light of my screen the only companion in this vast expanse of isolation.

    Every character in the game resonates with pieces of my own soul, reflecting my fears and hopes. The intricate design of Endless Legend 2 mirrors the complexity of my emotions; beautiful yet deeply fraught with the struggle of existence. I yearn for the laughter of companions and the warmth of camaraderie, yet here I am, cloaked in shadows, fighting battles that are often invisible to the outside world.

    As I read about the game, I can almost hear the distant armies clashing, feel the pulse of a story waiting to unfold. But reality is stark; the realms I traverse are not just virtual landscapes but the silent corridors of my mind, echoing with the sounds of my own solitude. I wish I could escape into that world, to feel the thrill of adventure once more, to connect with others who understand the weight of these unspoken burdens.

    But for now, all I have are the remnants of hope, the flickering flames of what could be. And as the countdown to Endless Legend 2 continues, I can’t help but wonder if the game will offer me a reprieve from this loneliness or merely serve as a reminder of the connections I yearn for.

    #EndlessLegend2 #Loneliness #Heartbreak #GamingCommunity #Solitude
    In the quiet moments, when the world feels heavy and my heart is an echo of the past, I find myself drawn into the realm of Endless Legend 2. Just like the characters that roam through its beautifully crafted landscapes, I too wander through my own desolate terrains of disappointment and solitude. 🖤 In an age where connections are just a click away, I feel an overwhelming wave of loneliness wash over me. It's as if the colors of my life have faded into shades of grey, much like the emptiness that lingers in the air. I once believed in the promise of adventure and the thrill of exploration, but now I’m left with the haunting reminder of dreams unfulfilled. The anticipation for Endless Legend 2, scheduled for early access on August 7, is bittersweet. It stirs a deep longing within me for the days when joy was effortlessly abundant. Jean-Maxime Moris, the creative director of Amplitude Studios, speaks of worlds to conquer, of stories to tell. Yet, each word feels like a distant whisper, a reminder of the tales I used to weave in my mind. I once imagined myself as a brave hero, surrounded by friends who would join me in battle. Now, I sit alone, the flickering light of my screen the only companion in this vast expanse of isolation. 🌧️ Every character in the game resonates with pieces of my own soul, reflecting my fears and hopes. The intricate design of Endless Legend 2 mirrors the complexity of my emotions; beautiful yet deeply fraught with the struggle of existence. I yearn for the laughter of companions and the warmth of camaraderie, yet here I am, cloaked in shadows, fighting battles that are often invisible to the outside world. As I read about the game, I can almost hear the distant armies clashing, feel the pulse of a story waiting to unfold. But reality is stark; the realms I traverse are not just virtual landscapes but the silent corridors of my mind, echoing with the sounds of my own solitude. I wish I could escape into that world, to feel the thrill of adventure once more, to connect with others who understand the weight of these unspoken burdens. But for now, all I have are the remnants of hope, the flickering flames of what could be. And as the countdown to Endless Legend 2 continues, I can’t help but wonder if the game will offer me a reprieve from this loneliness or merely serve as a reminder of the connections I yearn for. 🖤 #EndlessLegend2 #Loneliness #Heartbreak #GamingCommunity #Solitude
    www.actugaming.net
    ActuGaming.net Endless Legend 2 : Notre interview de Jean-Maxime Moris, directeur créatif sur le 4X d’Amplitude Studios Officialisé en début d’année, Endless Legend 2 sortira en accès anticipé le 7 août prochain […] L'article Endle
    Like
    Love
    Wow
    Sad
    Angry
    222
    · 1 Comments ·0 Shares ·0 Reviews
  • Time Complexity of Sorting Algorithms in Python, Java, and C++

    Posted on : June 13, 2025

    By

    Tech World Times

    Development and Testing 

    Rate this post

    Sorting helps organize data in a specific order. It is used in search, reports, and efficient storage. Different sorting algorithms offer different performance. In this article, we will explain the Time Complexity of Sorting Algorithms in simple words. We will cover Python, Java, and C++ examples.
    1. What Is Time Complexity?
    Time complexity tells how fast an algorithm runs. It measures the number of steps as input grows. It is written in Big-O notation. For example, Omeans steps grow with the square of inputs.
    2. Types of Time Complexity
    Here are common types:

    O: Constant time
    O: Linear time
    O: Log-linear time
    O: Quadratic time

    We will now apply these to sorting.
    3. Bubble Sort
    Bubble Sort compares two numbers and swaps them if needed. It repeats until the list is sorted.
    Time Complexity:

    Best Case: OAverage Case: OWorst Case: OPython Example:
    pythonCopyEditdef bubble_sort:
    n = lenfor i in range:
    for j in range:
    if arr> arr:
    arr, arr= arr, arrJava Example:
    javaCopyEditvoid bubbleSort{
    int n = arr.length;
    forforif{
    int temp = arr;
    arr= arr;
    arr= temp;
    }
    }

    C++ Example:
    cppCopyEditvoid bubbleSort{
    forforifswap;
    }

    4. Selection Sort
    This sort picks the smallest number and places it at the front.
    Time Complexity:

    Best Case: OAverage Case: OWorst Case: OPython Example:
    pythonCopyEditdef selection_sort:
    for i in range):
    min_idx = i
    for j in range):
    if arr< arr:
    min_idx = j
    arr, arr= arr, arr5. Insertion Sort
    This algorithm builds the final list one item at a time.
    Time Complexity:

    Best Case: OAverage Case: OWorst Case: OJava Example:
    javaCopyEditvoid insertionSort{
    for{
    int key = arr;
    int j = i - 1;
    while{
    arr= arr;
    j = j - 1;
    }
    arr= key;
    }
    }

    6. Merge Sort
    Merge Sort splits the array into halves and merges them back in order.
    Time Complexity of Sorting Algorithms like Merge Sort is usually better.

    Best Case: OAverage Case: OWorst Case: OPython Example:
    pythonCopyEditdef merge_sort:
    if len> 1:
    mid = len// 2
    left = arrright = arrmerge_sortmerge_sorti = j = k = 0
    while i < lenand j < len:
    if left< right:
    arr= lefti += 1
    else:
    arr= rightj += 1
    k += 1

    arr= left+ right7. Quick Sort
    Quick Sort picks a pivot and places smaller numbers before it.
    Time Complexity:

    Best Case: OAverage Case: OWorst Case: OC++ Example:
    cppCopyEditint partition{
    int pivot = arr;
    int i = low - 1;
    for{
    if{
    i++;
    swap;
    }
    }
    swap;
    return i + 1;
    }

    void quickSort{
    if{
    int pi = partition;
    quickSort;
    quickSort;
    }
    }

    8. Built-in Sort Methods
    Languages have built-in sort functions. These are well-optimized.

    Python: sortedor list.sortuses TimSort

    Time Complexity: OJava: Arrays.sortuses Dual-Pivot QuickSort

    Time Complexity: OC++: std::sortuses IntroSort

    Time Complexity: OThese are better for most real-world tasks.
    9. Time Complexity Comparison Table
    AlgorithmBestAverageWorstStableBubble SortOOOYesSelection SortOOONoInsertion SortOOOYesMerge SortOOOYesQuick SortOOONoTimSortOOOYesIntroSortOOONo
    10. How to Choose the Right Algorithm?

    Use Merge Sort for large stable data.
    Use Quick Sort for faster average speed.
    Use Insertion Sort for small or nearly sorted lists.
    Use built-in sort functions unless you need control.

    Conclusion
    The Time Complexity of Sorting Algorithms helps us pick the right tool. Bubble, Selection, and Insertion Sort are simple but slow. Merge and Quick Sort are faster and used often. Built-in functions are highly optimized. Python, Java, and C++ each have their strengths.
    Understand your problem and input size. Then pick the sorting method. This ensures better speed and performance in your code.
    Tech World TimesTech World Times, a global collective focusing on the latest tech news and trends in blockchain, Fintech, Development & Testing, AI and Startups. If you are looking for the guest post then contact at techworldtimes@gmail.com
    #time #complexity #sorting #algorithms #python
    Time Complexity of Sorting Algorithms in Python, Java, and C++
    Posted on : June 13, 2025 By Tech World Times Development and Testing  Rate this post Sorting helps organize data in a specific order. It is used in search, reports, and efficient storage. Different sorting algorithms offer different performance. In this article, we will explain the Time Complexity of Sorting Algorithms in simple words. We will cover Python, Java, and C++ examples. 1. What Is Time Complexity? Time complexity tells how fast an algorithm runs. It measures the number of steps as input grows. It is written in Big-O notation. For example, Omeans steps grow with the square of inputs. 2. Types of Time Complexity Here are common types: O: Constant time O: Linear time O: Log-linear time O: Quadratic time We will now apply these to sorting. 3. Bubble Sort Bubble Sort compares two numbers and swaps them if needed. It repeats until the list is sorted. Time Complexity: Best Case: OAverage Case: OWorst Case: OPython Example: pythonCopyEditdef bubble_sort: n = lenfor i in range: for j in range: if arr> arr: arr, arr= arr, arrJava Example: javaCopyEditvoid bubbleSort{ int n = arr.length; forforif{ int temp = arr; arr= arr; arr= temp; } } C++ Example: cppCopyEditvoid bubbleSort{ forforifswap; } 4. Selection Sort This sort picks the smallest number and places it at the front. Time Complexity: Best Case: OAverage Case: OWorst Case: OPython Example: pythonCopyEditdef selection_sort: for i in range): min_idx = i for j in range): if arr< arr: min_idx = j arr, arr= arr, arr5. Insertion Sort This algorithm builds the final list one item at a time. Time Complexity: Best Case: OAverage Case: OWorst Case: OJava Example: javaCopyEditvoid insertionSort{ for{ int key = arr; int j = i - 1; while{ arr= arr; j = j - 1; } arr= key; } } 6. Merge Sort Merge Sort splits the array into halves and merges them back in order. Time Complexity of Sorting Algorithms like Merge Sort is usually better. Best Case: OAverage Case: OWorst Case: OPython Example: pythonCopyEditdef merge_sort: if len> 1: mid = len// 2 left = arrright = arrmerge_sortmerge_sorti = j = k = 0 while i < lenand j < len: if left< right: arr= lefti += 1 else: arr= rightj += 1 k += 1 arr= left+ right7. Quick Sort Quick Sort picks a pivot and places smaller numbers before it. Time Complexity: Best Case: OAverage Case: OWorst Case: OC++ Example: cppCopyEditint partition{ int pivot = arr; int i = low - 1; for{ if{ i++; swap; } } swap; return i + 1; } void quickSort{ if{ int pi = partition; quickSort; quickSort; } } 8. Built-in Sort Methods Languages have built-in sort functions. These are well-optimized. Python: sortedor list.sortuses TimSort Time Complexity: OJava: Arrays.sortuses Dual-Pivot QuickSort Time Complexity: OC++: std::sortuses IntroSort Time Complexity: OThese are better for most real-world tasks. 9. Time Complexity Comparison Table AlgorithmBestAverageWorstStableBubble SortOOOYesSelection SortOOONoInsertion SortOOOYesMerge SortOOOYesQuick SortOOONoTimSortOOOYesIntroSortOOONo 10. How to Choose the Right Algorithm? Use Merge Sort for large stable data. Use Quick Sort for faster average speed. Use Insertion Sort for small or nearly sorted lists. Use built-in sort functions unless you need control. Conclusion The Time Complexity of Sorting Algorithms helps us pick the right tool. Bubble, Selection, and Insertion Sort are simple but slow. Merge and Quick Sort are faster and used often. Built-in functions are highly optimized. Python, Java, and C++ each have their strengths. Understand your problem and input size. Then pick the sorting method. This ensures better speed and performance in your code. Tech World TimesTech World Times, a global collective focusing on the latest tech news and trends in blockchain, Fintech, Development & Testing, AI and Startups. If you are looking for the guest post then contact at techworldtimes@gmail.com #time #complexity #sorting #algorithms #python
    Time Complexity of Sorting Algorithms in Python, Java, and C++
    techworldtimes.com
    Posted on : June 13, 2025 By Tech World Times Development and Testing  Rate this post Sorting helps organize data in a specific order. It is used in search, reports, and efficient storage. Different sorting algorithms offer different performance. In this article, we will explain the Time Complexity of Sorting Algorithms in simple words. We will cover Python, Java, and C++ examples. 1. What Is Time Complexity? Time complexity tells how fast an algorithm runs. It measures the number of steps as input grows. It is written in Big-O notation. For example, O(n²) means steps grow with the square of inputs. 2. Types of Time Complexity Here are common types: O(1): Constant time O(n): Linear time O(n log n): Log-linear time O(n²): Quadratic time We will now apply these to sorting. 3. Bubble Sort Bubble Sort compares two numbers and swaps them if needed. It repeats until the list is sorted. Time Complexity: Best Case: O(n) (if already sorted) Average Case: O(n²) Worst Case: O(n²) Python Example: pythonCopyEditdef bubble_sort(arr): n = len(arr) for i in range(n): for j in range(n - i - 1): if arr[j] > arr[j+1]: arr[j], arr[j+1] = arr[j+1], arr[j] Java Example: javaCopyEditvoid bubbleSort(int arr[]) { int n = arr.length; for (int i = 0; i < n-1; i++) for (int j = 0; j < n-i-1; j++) if (arr[j] > arr[j+1]) { int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } C++ Example: cppCopyEditvoid bubbleSort(int arr[], int n) { for (int i = 0; i < n-1; i++) for (int j = 0; j < n-i-1; j++) if (arr[j] > arr[j+1]) swap(arr[j], arr[j+1]); } 4. Selection Sort This sort picks the smallest number and places it at the front. Time Complexity: Best Case: O(n²) Average Case: O(n²) Worst Case: O(n²) Python Example: pythonCopyEditdef selection_sort(arr): for i in range(len(arr)): min_idx = i for j in range(i+1, len(arr)): if arr[j] < arr[min_idx]: min_idx = j arr[i], arr[min_idx] = arr[min_idx], arr[i] 5. Insertion Sort This algorithm builds the final list one item at a time. Time Complexity: Best Case: O(n) Average Case: O(n²) Worst Case: O(n²) Java Example: javaCopyEditvoid insertionSort(int arr[]) { for (int i = 1; i < arr.length; i++) { int key = arr[i]; int j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j = j - 1; } arr[j + 1] = key; } } 6. Merge Sort Merge Sort splits the array into halves and merges them back in order. Time Complexity of Sorting Algorithms like Merge Sort is usually better. Best Case: O(n log n) Average Case: O(n log n) Worst Case: O(n log n) Python Example: pythonCopyEditdef merge_sort(arr): if len(arr) > 1: mid = len(arr) // 2 left = arr[:mid] right = arr[mid:] merge_sort(left) merge_sort(right) i = j = k = 0 while i < len(left) and j < len(right): if left[i] < right[j]: arr[k] = left[i] i += 1 else: arr[k] = right[j] j += 1 k += 1 arr[k:] = left[i:] + right[j:] 7. Quick Sort Quick Sort picks a pivot and places smaller numbers before it. Time Complexity: Best Case: O(n log n) Average Case: O(n log n) Worst Case: O(n²) C++ Example: cppCopyEditint partition(int arr[], int low, int high) { int pivot = arr[high]; int i = low - 1; for (int j = low; j < high; j++) { if (arr[j] < pivot) { i++; swap(arr[i], arr[j]); } } swap(arr[i+1], arr[high]); return i + 1; } void quickSort(int arr[], int low, int high) { if (low < high) { int pi = partition(arr, low, high); quickSort(arr, low, pi - 1); quickSort(arr, pi + 1, high); } } 8. Built-in Sort Methods Languages have built-in sort functions. These are well-optimized. Python: sorted() or list.sort() uses TimSort Time Complexity: O(n log n) Java: Arrays.sort() uses Dual-Pivot QuickSort Time Complexity: O(n log n) C++: std::sort() uses IntroSort Time Complexity: O(n log n) These are better for most real-world tasks. 9. Time Complexity Comparison Table AlgorithmBestAverageWorstStableBubble SortO(n)O(n²)O(n²)YesSelection SortO(n²)O(n²)O(n²)NoInsertion SortO(n)O(n²)O(n²)YesMerge SortO(n log n)O(n log n)O(n log n)YesQuick SortO(n log n)O(n log n)O(n²)NoTimSort (Python)O(n)O(n log n)O(n log n)YesIntroSort (C++)O(n log n)O(n log n)O(n log n)No 10. How to Choose the Right Algorithm? Use Merge Sort for large stable data. Use Quick Sort for faster average speed. Use Insertion Sort for small or nearly sorted lists. Use built-in sort functions unless you need control. Conclusion The Time Complexity of Sorting Algorithms helps us pick the right tool. Bubble, Selection, and Insertion Sort are simple but slow. Merge and Quick Sort are faster and used often. Built-in functions are highly optimized. Python, Java, and C++ each have their strengths. Understand your problem and input size. Then pick the sorting method. This ensures better speed and performance in your code. Tech World TimesTech World Times (TWT), a global collective focusing on the latest tech news and trends in blockchain, Fintech, Development & Testing, AI and Startups. If you are looking for the guest post then contact at techworldtimes@gmail.com
    Like
    Love
    Wow
    Sad
    Angry
    570
    · 2 Comments ·0 Shares ·0 Reviews
  • Malicious PyPI Package Masquerades as Chimera Module to Steal AWS, CI/CD, and macOS Data

    Jun 16, 2025Ravie LakshmananMalware / DevOps

    Cybersecurity researchers have discovered a malicious package on the Python Package Indexrepository that's capable of harvesting sensitive developer-related information, such as credentials, configuration data, and environment variables, among others.
    The package, named chimera-sandbox-extensions, attracted 143 downloads and likely targets users of a service called Chimera Sandbox, which was released by Singaporean tech company Grab last August to facilitate "experimentation and development ofsolutions."
    The package masquerades as a helper module for Chimera Sandbox, but "aims to steal credentials and other sensitive information such as Jamf configuration, CI/CD environment variables, AWS tokens, and more," JFrog security researcher Guy Korolevski said in a report published last week.
    Once installed, it attempts to connect to an external domain whose domain name is generated using a domain generation algorithmin order to download and execute a next-stage payload.
    Specifically, the malware acquires from the domain an authentication token, which is then used to send a request to the same domain and retrieve the Python-based information stealer.

    The stealer malware is equipped to siphon a wide range of data from infected machines. This includes -

    JAMF receipts, which are records of software packages installed by Jamf Pro on managed computers
    Pod sandbox environment authentication tokens and git information
    CI/CD information from environment variables
    Zscaler host configuration
    Amazon Web Services account information and tokens
    Public IP address
    General platform, user, and host information

    The kind of data gathered by the malware shows that it's mainly geared towards corporate and cloud infrastructure. In addition, the extraction of JAMF receipts indicates that it's also capable of targeting Apple macOS systems.
    The collected information is sent via a POST request back to the same domain, after which the server assesses if the machine is a worthy target for further exploitation. However, JFrog said it was unable to obtain the payload at the time of analysis.
    "The targeted approach employed by this malware, along with the complexity of its multi-stage targeted payload, distinguishes it from the more generic open-source malware threats we have encountered thus far, highlighting the advancements that malicious packages have made recently," Jonathan Sar Shalom, director of threat research at JFrog Security Research team, said.

    "This new sophistication of malware underscores why development teams remain vigilant with updates—alongside proactive security research – to defend against emerging threats and maintain software integrity."
    The disclosure comes as SafeDep and Veracode detailed a number of malware-laced npm packages that are designed to execute remote code and download additional payloads. The packages in question are listed below -

    eslint-config-airbnb-compatts-runtime-compat-checksolders@mediawave/libAll the identified npm packages have since been taken down from npm, but not before they were downloaded hundreds of times from the package registry.
    SafeDep's analysis of eslint-config-airbnb-compat found that the JavaScript library has ts-runtime-compat-check listed as a dependency, which, in turn, contacts an external server defined in the former packageto retrieve and execute a Base64-encoded string. The exact nature of the payload is unknown.
    "It implements a multi-stage remote code execution attack using a transitive dependency to hide the malicious code," SafeDep researcher Kunal Singh said.
    Solders, on the other hand, has been found to incorporate a post-install script in its package.json, causing the malicious code to be automatically executed as soon as the package is installed.
    "At first glance, it's hard to believe that this is actually valid JavaScript," the Veracode Threat Research team said. "It looks like a seemingly random collection of Japanese symbols. It turns out that this particular obfuscation scheme uses the Unicode characters as variable names and a sophisticated chain of dynamic code generation to work."
    Decoding the script reveals an extra layer of obfuscation, unpacking which reveals its main function: Check if the compromised machine is Windows, and if so, run a PowerShell command to retrieve a next-stage payload from a remote server.
    This second-stage PowerShell script, also obscured, is designed to fetch a Windows batch script from another domainand configures a Windows Defender Antivirus exclusion list to avoid detection. The batch script then paves the way for the execution of a .NET DLL that reaches out to a PNG image hosted on ImgBB.
    "is grabbing the last two pixels from this image and then looping through some data contained elsewhere in it," Veracode said. "It ultimately builds up in memory YET ANOTHER .NET DLL."

    Furthermore, the DLL is equipped to create task scheduler entries and features the ability to bypass user account controlusing a combination of FodHelper.exe and programmatic identifiersto evade defenses and avoid triggering any security alerts to the user.
    The newly-downloaded DLL is Pulsar RAT, a "free, open-source Remote Administration Tool for Windows" and a variant of the Quasar RAT.
    "From a wall of Japanese characters to a RAT hidden within the pixels of a PNG file, the attacker went to extraordinary lengths to conceal their payload, nesting it a dozen layers deep to evade detection," Veracode said. "While the attacker's ultimate objective for deploying the Pulsar RAT remains unclear, the sheer complexity of this delivery mechanism is a powerful indicator of malicious intent."
    Crypto Malware in the Open-Source Supply Chain
    The findings also coincide with a report from Socket that identified credential stealers, cryptocurrency drainers, cryptojackers, and clippers as the main types of threats targeting the cryptocurrency and blockchain development ecosystem.

    Some of the examples of these packages include -

    express-dompurify and pumptoolforvolumeandcomment, which are capable of harvesting browser credentials and cryptocurrency wallet keys
    bs58js, which drains a victim's wallet and uses multi-hop transfers to obscure theft and frustrate forensic tracing.
    lsjglsjdv, asyncaiosignal, and raydium-sdk-liquidity-init, which functions as a clipper to monitor the system clipboard for cryptocurrency wallet strings and replace them with threat actor‑controlled addresses to reroute transactions to the attackers

    "As Web3 development converges with mainstream software engineering, the attack surface for blockchain-focused projects is expanding in both scale and complexity," Socket security researcher Kirill Boychenko said.
    "Financially motivated threat actors and state-sponsored groups are rapidly evolving their tactics to exploit systemic weaknesses in the software supply chain. These campaigns are iterative, persistent, and increasingly tailored to high-value targets."
    AI and Slopsquatting
    The rise of artificial intelligence-assisted coding, also called vibe coding, has unleashed another novel threat in the form of slopsquatting, where large language modelscan hallucinate non-existent but plausible package names that bad actors can weaponize to conduct supply chain attacks.
    Trend Micro, in a report last week, said it observed an unnamed advanced agent "confidently" cooking up a phantom Python package named starlette-reverse-proxy, only for the build process to crash with the error "module not found." However, should an adversary upload a package with the same name on the repository, it can have serious security consequences.

    Furthermore, the cybersecurity company noted that advanced coding agents and workflows such as Claude Code CLI, OpenAI Codex CLI, and Cursor AI with Model Context Protocol-backed validation can help reduce, but not completely eliminate, the risk of slopsquatting.
    "When agents hallucinate dependencies or install unverified packages, they create an opportunity for slopsquatting attacks, in which malicious actors pre-register those same hallucinated names on public registries," security researcher Sean Park said.
    "While reasoning-enhanced agents can reduce the rate of phantom suggestions by approximately half, they do not eliminate them entirely. Even the vibe-coding workflow augmented with live MCP validations achieves the lowest rates of slip-through, but still misses edge cases."

    Found this article interesting? Follow us on Twitter  and LinkedIn to read more exclusive content we post.

    SHARE




    #malicious #pypi #package #masquerades #chimera
    Malicious PyPI Package Masquerades as Chimera Module to Steal AWS, CI/CD, and macOS Data
    Jun 16, 2025Ravie LakshmananMalware / DevOps Cybersecurity researchers have discovered a malicious package on the Python Package Indexrepository that's capable of harvesting sensitive developer-related information, such as credentials, configuration data, and environment variables, among others. The package, named chimera-sandbox-extensions, attracted 143 downloads and likely targets users of a service called Chimera Sandbox, which was released by Singaporean tech company Grab last August to facilitate "experimentation and development ofsolutions." The package masquerades as a helper module for Chimera Sandbox, but "aims to steal credentials and other sensitive information such as Jamf configuration, CI/CD environment variables, AWS tokens, and more," JFrog security researcher Guy Korolevski said in a report published last week. Once installed, it attempts to connect to an external domain whose domain name is generated using a domain generation algorithmin order to download and execute a next-stage payload. Specifically, the malware acquires from the domain an authentication token, which is then used to send a request to the same domain and retrieve the Python-based information stealer. The stealer malware is equipped to siphon a wide range of data from infected machines. This includes - JAMF receipts, which are records of software packages installed by Jamf Pro on managed computers Pod sandbox environment authentication tokens and git information CI/CD information from environment variables Zscaler host configuration Amazon Web Services account information and tokens Public IP address General platform, user, and host information The kind of data gathered by the malware shows that it's mainly geared towards corporate and cloud infrastructure. In addition, the extraction of JAMF receipts indicates that it's also capable of targeting Apple macOS systems. The collected information is sent via a POST request back to the same domain, after which the server assesses if the machine is a worthy target for further exploitation. However, JFrog said it was unable to obtain the payload at the time of analysis. "The targeted approach employed by this malware, along with the complexity of its multi-stage targeted payload, distinguishes it from the more generic open-source malware threats we have encountered thus far, highlighting the advancements that malicious packages have made recently," Jonathan Sar Shalom, director of threat research at JFrog Security Research team, said. "This new sophistication of malware underscores why development teams remain vigilant with updates—alongside proactive security research – to defend against emerging threats and maintain software integrity." The disclosure comes as SafeDep and Veracode detailed a number of malware-laced npm packages that are designed to execute remote code and download additional payloads. The packages in question are listed below - eslint-config-airbnb-compatts-runtime-compat-checksolders@mediawave/libAll the identified npm packages have since been taken down from npm, but not before they were downloaded hundreds of times from the package registry. SafeDep's analysis of eslint-config-airbnb-compat found that the JavaScript library has ts-runtime-compat-check listed as a dependency, which, in turn, contacts an external server defined in the former packageto retrieve and execute a Base64-encoded string. The exact nature of the payload is unknown. "It implements a multi-stage remote code execution attack using a transitive dependency to hide the malicious code," SafeDep researcher Kunal Singh said. Solders, on the other hand, has been found to incorporate a post-install script in its package.json, causing the malicious code to be automatically executed as soon as the package is installed. "At first glance, it's hard to believe that this is actually valid JavaScript," the Veracode Threat Research team said. "It looks like a seemingly random collection of Japanese symbols. It turns out that this particular obfuscation scheme uses the Unicode characters as variable names and a sophisticated chain of dynamic code generation to work." Decoding the script reveals an extra layer of obfuscation, unpacking which reveals its main function: Check if the compromised machine is Windows, and if so, run a PowerShell command to retrieve a next-stage payload from a remote server. This second-stage PowerShell script, also obscured, is designed to fetch a Windows batch script from another domainand configures a Windows Defender Antivirus exclusion list to avoid detection. The batch script then paves the way for the execution of a .NET DLL that reaches out to a PNG image hosted on ImgBB. "is grabbing the last two pixels from this image and then looping through some data contained elsewhere in it," Veracode said. "It ultimately builds up in memory YET ANOTHER .NET DLL." Furthermore, the DLL is equipped to create task scheduler entries and features the ability to bypass user account controlusing a combination of FodHelper.exe and programmatic identifiersto evade defenses and avoid triggering any security alerts to the user. The newly-downloaded DLL is Pulsar RAT, a "free, open-source Remote Administration Tool for Windows" and a variant of the Quasar RAT. "From a wall of Japanese characters to a RAT hidden within the pixels of a PNG file, the attacker went to extraordinary lengths to conceal their payload, nesting it a dozen layers deep to evade detection," Veracode said. "While the attacker's ultimate objective for deploying the Pulsar RAT remains unclear, the sheer complexity of this delivery mechanism is a powerful indicator of malicious intent." Crypto Malware in the Open-Source Supply Chain The findings also coincide with a report from Socket that identified credential stealers, cryptocurrency drainers, cryptojackers, and clippers as the main types of threats targeting the cryptocurrency and blockchain development ecosystem. Some of the examples of these packages include - express-dompurify and pumptoolforvolumeandcomment, which are capable of harvesting browser credentials and cryptocurrency wallet keys bs58js, which drains a victim's wallet and uses multi-hop transfers to obscure theft and frustrate forensic tracing. lsjglsjdv, asyncaiosignal, and raydium-sdk-liquidity-init, which functions as a clipper to monitor the system clipboard for cryptocurrency wallet strings and replace them with threat actor‑controlled addresses to reroute transactions to the attackers "As Web3 development converges with mainstream software engineering, the attack surface for blockchain-focused projects is expanding in both scale and complexity," Socket security researcher Kirill Boychenko said. "Financially motivated threat actors and state-sponsored groups are rapidly evolving their tactics to exploit systemic weaknesses in the software supply chain. These campaigns are iterative, persistent, and increasingly tailored to high-value targets." AI and Slopsquatting The rise of artificial intelligence-assisted coding, also called vibe coding, has unleashed another novel threat in the form of slopsquatting, where large language modelscan hallucinate non-existent but plausible package names that bad actors can weaponize to conduct supply chain attacks. Trend Micro, in a report last week, said it observed an unnamed advanced agent "confidently" cooking up a phantom Python package named starlette-reverse-proxy, only for the build process to crash with the error "module not found." However, should an adversary upload a package with the same name on the repository, it can have serious security consequences. Furthermore, the cybersecurity company noted that advanced coding agents and workflows such as Claude Code CLI, OpenAI Codex CLI, and Cursor AI with Model Context Protocol-backed validation can help reduce, but not completely eliminate, the risk of slopsquatting. "When agents hallucinate dependencies or install unverified packages, they create an opportunity for slopsquatting attacks, in which malicious actors pre-register those same hallucinated names on public registries," security researcher Sean Park said. "While reasoning-enhanced agents can reduce the rate of phantom suggestions by approximately half, they do not eliminate them entirely. Even the vibe-coding workflow augmented with live MCP validations achieves the lowest rates of slip-through, but still misses edge cases." Found this article interesting? Follow us on Twitter  and LinkedIn to read more exclusive content we post. SHARE     #malicious #pypi #package #masquerades #chimera
    Malicious PyPI Package Masquerades as Chimera Module to Steal AWS, CI/CD, and macOS Data
    thehackernews.com
    Jun 16, 2025Ravie LakshmananMalware / DevOps Cybersecurity researchers have discovered a malicious package on the Python Package Index (PyPI) repository that's capable of harvesting sensitive developer-related information, such as credentials, configuration data, and environment variables, among others. The package, named chimera-sandbox-extensions, attracted 143 downloads and likely targets users of a service called Chimera Sandbox, which was released by Singaporean tech company Grab last August to facilitate "experimentation and development of [machine learning] solutions." The package masquerades as a helper module for Chimera Sandbox, but "aims to steal credentials and other sensitive information such as Jamf configuration, CI/CD environment variables, AWS tokens, and more," JFrog security researcher Guy Korolevski said in a report published last week. Once installed, it attempts to connect to an external domain whose domain name is generated using a domain generation algorithm (DGA) in order to download and execute a next-stage payload. Specifically, the malware acquires from the domain an authentication token, which is then used to send a request to the same domain and retrieve the Python-based information stealer. The stealer malware is equipped to siphon a wide range of data from infected machines. This includes - JAMF receipts, which are records of software packages installed by Jamf Pro on managed computers Pod sandbox environment authentication tokens and git information CI/CD information from environment variables Zscaler host configuration Amazon Web Services account information and tokens Public IP address General platform, user, and host information The kind of data gathered by the malware shows that it's mainly geared towards corporate and cloud infrastructure. In addition, the extraction of JAMF receipts indicates that it's also capable of targeting Apple macOS systems. The collected information is sent via a POST request back to the same domain, after which the server assesses if the machine is a worthy target for further exploitation. However, JFrog said it was unable to obtain the payload at the time of analysis. "The targeted approach employed by this malware, along with the complexity of its multi-stage targeted payload, distinguishes it from the more generic open-source malware threats we have encountered thus far, highlighting the advancements that malicious packages have made recently," Jonathan Sar Shalom, director of threat research at JFrog Security Research team, said. "This new sophistication of malware underscores why development teams remain vigilant with updates—alongside proactive security research – to defend against emerging threats and maintain software integrity." The disclosure comes as SafeDep and Veracode detailed a number of malware-laced npm packages that are designed to execute remote code and download additional payloads. The packages in question are listed below - eslint-config-airbnb-compat (676 Downloads) ts-runtime-compat-check (1,588 Downloads) solders (983 Downloads) @mediawave/lib (386 Downloads) All the identified npm packages have since been taken down from npm, but not before they were downloaded hundreds of times from the package registry. SafeDep's analysis of eslint-config-airbnb-compat found that the JavaScript library has ts-runtime-compat-check listed as a dependency, which, in turn, contacts an external server defined in the former package ("proxy.eslint-proxy[.]site") to retrieve and execute a Base64-encoded string. The exact nature of the payload is unknown. "It implements a multi-stage remote code execution attack using a transitive dependency to hide the malicious code," SafeDep researcher Kunal Singh said. Solders, on the other hand, has been found to incorporate a post-install script in its package.json, causing the malicious code to be automatically executed as soon as the package is installed. "At first glance, it's hard to believe that this is actually valid JavaScript," the Veracode Threat Research team said. "It looks like a seemingly random collection of Japanese symbols. It turns out that this particular obfuscation scheme uses the Unicode characters as variable names and a sophisticated chain of dynamic code generation to work." Decoding the script reveals an extra layer of obfuscation, unpacking which reveals its main function: Check if the compromised machine is Windows, and if so, run a PowerShell command to retrieve a next-stage payload from a remote server ("firewall[.]tel"). This second-stage PowerShell script, also obscured, is designed to fetch a Windows batch script from another domain ("cdn.audiowave[.]org") and configures a Windows Defender Antivirus exclusion list to avoid detection. The batch script then paves the way for the execution of a .NET DLL that reaches out to a PNG image hosted on ImgBB ("i.ibb[.]co"). "[The DLL] is grabbing the last two pixels from this image and then looping through some data contained elsewhere in it," Veracode said. "It ultimately builds up in memory YET ANOTHER .NET DLL." Furthermore, the DLL is equipped to create task scheduler entries and features the ability to bypass user account control (UAC) using a combination of FodHelper.exe and programmatic identifiers (ProgIDs) to evade defenses and avoid triggering any security alerts to the user. The newly-downloaded DLL is Pulsar RAT, a "free, open-source Remote Administration Tool for Windows" and a variant of the Quasar RAT. "From a wall of Japanese characters to a RAT hidden within the pixels of a PNG file, the attacker went to extraordinary lengths to conceal their payload, nesting it a dozen layers deep to evade detection," Veracode said. "While the attacker's ultimate objective for deploying the Pulsar RAT remains unclear, the sheer complexity of this delivery mechanism is a powerful indicator of malicious intent." Crypto Malware in the Open-Source Supply Chain The findings also coincide with a report from Socket that identified credential stealers, cryptocurrency drainers, cryptojackers, and clippers as the main types of threats targeting the cryptocurrency and blockchain development ecosystem. Some of the examples of these packages include - express-dompurify and pumptoolforvolumeandcomment, which are capable of harvesting browser credentials and cryptocurrency wallet keys bs58js, which drains a victim's wallet and uses multi-hop transfers to obscure theft and frustrate forensic tracing. lsjglsjdv, asyncaiosignal, and raydium-sdk-liquidity-init, which functions as a clipper to monitor the system clipboard for cryptocurrency wallet strings and replace them with threat actor‑controlled addresses to reroute transactions to the attackers "As Web3 development converges with mainstream software engineering, the attack surface for blockchain-focused projects is expanding in both scale and complexity," Socket security researcher Kirill Boychenko said. "Financially motivated threat actors and state-sponsored groups are rapidly evolving their tactics to exploit systemic weaknesses in the software supply chain. These campaigns are iterative, persistent, and increasingly tailored to high-value targets." AI and Slopsquatting The rise of artificial intelligence (AI)-assisted coding, also called vibe coding, has unleashed another novel threat in the form of slopsquatting, where large language models (LLMs) can hallucinate non-existent but plausible package names that bad actors can weaponize to conduct supply chain attacks. Trend Micro, in a report last week, said it observed an unnamed advanced agent "confidently" cooking up a phantom Python package named starlette-reverse-proxy, only for the build process to crash with the error "module not found." However, should an adversary upload a package with the same name on the repository, it can have serious security consequences. Furthermore, the cybersecurity company noted that advanced coding agents and workflows such as Claude Code CLI, OpenAI Codex CLI, and Cursor AI with Model Context Protocol (MCP)-backed validation can help reduce, but not completely eliminate, the risk of slopsquatting. "When agents hallucinate dependencies or install unverified packages, they create an opportunity for slopsquatting attacks, in which malicious actors pre-register those same hallucinated names on public registries," security researcher Sean Park said. "While reasoning-enhanced agents can reduce the rate of phantom suggestions by approximately half, they do not eliminate them entirely. Even the vibe-coding workflow augmented with live MCP validations achieves the lowest rates of slip-through, but still misses edge cases." Found this article interesting? Follow us on Twitter  and LinkedIn to read more exclusive content we post. SHARE    
    Like
    Love
    Wow
    Sad
    Angry
    514
    · 2 Comments ·0 Shares ·0 Reviews
More Results
CGShares https://cgshares.com